/* =====================================================================
   TEKFINOTAX – site styles
   ===================================================================== */
:root{
  --primary:#4f46e5; --primary-2:#6d28d9; --violet:#7c3aed; --indigo-tint:#eef0ff;
  --orange:#f97316; --red:#e11d48; --green:#16a34a; --blue:#2563eb; --amber:#f59e0b; --teal:#0d9488; --pink:#db2777;
  --ink:#0f172a; --ink-2:#475569; --ink-3:#64748b; --line:#e6e8f2; --bg:#f6f7fd; --card:#fff; --navy:#0b1437;
  --r:14px; --r-sm:10px; --shadow:0 6px 24px rgba(30,41,99,.08); --shadow-lg:0 18px 50px rgba(30,41,99,.16);
  --ease:cubic-bezier(.22,1,.36,1); --spring:cubic-bezier(.34,1.56,.64,1);
  --font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font:15px/1.6 var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--primary);text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3{line-height:1.15;margin:0;letter-spacing:-.02em}
p{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.muted{color:var(--ink-3)} .small{font-size:.82rem}
.grad{background:linear-gradient(90deg,var(--primary),var(--violet) 60%,#a855f7);-webkit-background-clip:text;background-clip:text;color:transparent}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;border-radius:8px;z-index:200}.skip:focus{left:8px}
:focus-visible{outline:3px solid #a5b4fc;outline-offset:2px}
.ic{flex:none;display:inline-block;vertical-align:middle}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

/* ---------- buttons ---------- */
.btn{--bg:var(--primary);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:10px 18px;font-weight:700;font-size:.92rem;line-height:1.2;background:var(--bg);color:#fff;transition:transform .25s var(--spring),box-shadow .25s,background .25s,color .25s;white-space:nowrap;text-decoration:none}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(79,70,229,.28)}
.btn:active{transform:translateY(0) scale(.96)}
.btn .ic{transition:transform .3s var(--spring)}
.btn:hover .ic:last-child{transform:translateX(3px)}
.btn-primary{background:linear-gradient(135deg,#5b4cf0,#7c3aed)}
.btn-outline{background:#fff;color:var(--primary);box-shadow:inset 0 0 0 1.6px #c7cbfb}
.btn-outline:hover{background:var(--indigo-tint)}
.btn-light{background:#fff;color:var(--ink)}
.btn-dark{background:var(--navy)}
.btn-sm{padding:8px 14px;font-size:.85rem}
.btn-lg{padding:13px 24px;font-size:1rem}
.btn-icon{padding:10px 12px}
.btn-pill{background:#fff;color:var(--primary);border:1.5px solid #dfe2fb;border-radius:999px;padding:7px 14px;font-weight:700;font-size:.82rem;display:inline-flex;align-items:center;gap:6px;transition:all .25s var(--spring)}
.btn-pill:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px)}
.btn:disabled{opacity:.6;cursor:progress;transform:none}
.full{grid-column:1/-1;width:100%}
.ripple{position:absolute;border-radius:50%;transform:scale(0);background:rgba(255,255,255,.45);animation:ripple .6s ease-out;pointer-events:none}
.btn-outline .ripple,.btn-pill .ripple,.btn-light .ripple{background:rgba(79,70,229,.2)}
@keyframes ripple{to{transform:scale(4);opacity:0}}
.shine::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.7) 50%,transparent 70%);transform:translateX(-120%);animation:shine 3.2s ease-in-out infinite}
@keyframes shine{60%,100%{transform:translateX(120%)}}
.circ{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--ink);transition:all .25s var(--spring)}
.circ:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(1.1)}
.linkish{background:none;border:0;padding:0;color:inherit;text-align:left}
.linkish:hover{color:#fff}

/* ---------- header ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.6) blur(12px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.topbar.scrolled{box-shadow:0 6px 24px rgba(30,41,99,.08)}
.topbar-in{display:flex;align-items:center;gap:18px;height:72px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);flex:none}
.brand .logo-img{transition:transform .6s var(--spring);border-radius:50%;box-shadow:0 3px 10px rgba(227,18,11,.25);flex:none}
.brand:hover .logo-img{transform:rotate(-14deg) scale(1.08)}
.brand b{display:block;font-size:1.32rem;font-weight:800;letter-spacing:-.01em;line-height:1}
.brand b{letter-spacing:.01em}
.brand b i{font-style:normal;color:#e3120b}
.brand b em{font-style:normal;color:#f5c400;text-shadow:0 1px 0 #b98a00,0 0 1px #8a6700}
.brand small{color:#b4120c!important}
.brand small{display:block;font-size:.58rem;font-weight:700;letter-spacing:.1em;color:var(--ink-3);margin-top:3px}
.search{position:relative;flex:1 1 260px;max-width:340px;display:flex}
.search input{flex:1;min-width:0;border:1.5px solid var(--line);border-right:0;border-radius:10px 0 0 10px;padding:9px 14px;background:#fff;transition:border-color .2s,box-shadow .2s}
.search input:focus{outline:none;border-color:#a5b4fc;box-shadow:0 0 0 4px rgba(99,102,241,.12)}
.search-btn{border:0;border-radius:0 10px 10px 0;padding:0 14px;color:#fff;background:linear-gradient(135deg,#5b4cf0,#7c3aed)}
.suggest{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;max-height:340px;overflow:auto;z-index:60;animation:drop .25s var(--ease)}
.suggest button{display:flex;gap:10px;align-items:center;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:8px}
.suggest button:hover,.suggest button.on{background:var(--indigo-tint)}
.suggest small{display:block;color:var(--ink-3);font-size:.75rem}
.suggest .none{padding:10px;color:var(--ink-3);font-size:.88rem}
@keyframes drop{from{opacity:0;transform:translateY(-6px)}}
.mainnav{display:flex;gap:4px;margin-left:auto}
.mainnav a{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;font-size:.78rem;font-weight:600;color:var(--ink-2);border-radius:10px;transition:color .2s,background .2s}
.mainnav a .ic{transition:transform .35s var(--spring)}
.mainnav a:hover{color:var(--primary);background:var(--indigo-tint)}
.mainnav a:hover .ic{transform:translateY(-3px) scale(1.1)}
.mainnav a.on{color:var(--primary)}
.mainnav a.on::after{content:"";position:absolute;bottom:-12px;left:20%;right:20%;height:3px;border-radius:3px;background:var(--primary)}
.auth{display:flex;gap:8px}
.nav-auth{display:none}
.menu-btn{display:none;border:0;background:var(--indigo-tint);color:var(--primary);border-radius:10px;padding:8px}
.flash{margin:14px 0;padding:12px 16px;border-radius:10px;font-weight:600;background:#ecfdf5;color:#047857}.flash.err{background:#fef2f2;color:#b91c1c}

/* ---------- hero ---------- */
.hero{position:relative;padding:44px 0 40px;overflow:hidden;background:linear-gradient(180deg,#f3f2ff 0%,#f6f7fd 100%)}
.hero-bg .blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:float 14s ease-in-out infinite}
.b1{width:420px;height:420px;background:#c7d2fe;top:-140px;left:-120px}
.b2{width:360px;height:360px;background:#fbcfe8;bottom:-160px;right:10%;animation-delay:-4s!important}
.b3{width:260px;height:260px;background:#bbf7d0;top:30%;left:42%;opacity:.35!important;animation-delay:-8s!important}
@keyframes float{50%{transform:translate(30px,-20px) scale(1.08)}}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr 1.25fr;gap:30px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #ffe4cc;color:#c2410c;font-weight:700;font-size:.76rem;padding:6px 12px;border-radius:999px;box-shadow:var(--shadow)}
.eyebrow .ic{color:var(--amber);fill:var(--amber)}
.hero-title{font-size:clamp(2.1rem,4.4vw,3.35rem);font-weight:800;margin:16px 0 12px;color:#151c4b}
.hero-title .line{display:inline-block;animation:rise .9s var(--ease) both}
.hero-title .line:nth-child(2){animation-delay:.12s}.hero-title .line:nth-child(3){animation-delay:.24s;display:block}
@keyframes rise{from{opacity:0;transform:translateY(28px);filter:blur(6px)}}
.lead{color:var(--ink-2);font-size:1.02rem;max-width:520px;animation:rise .9s .35s var(--ease) both}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 22px;animation:rise .9s .45s var(--ease) both}
.play{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff}
.trust{list-style:none;padding:0;margin:0;display:flex;gap:18px;flex-wrap:wrap;font-size:.82rem;font-weight:600;color:var(--ink-2);animation:rise .9s .55s var(--ease) both}
.trust li{display:flex;align-items:center;gap:8px}
.t-ic{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#fff}
.t-ic.blue{background:var(--blue)}.t-ic.green{background:var(--green)}.t-ic.red{background:var(--red)}
.pop-in{animation:pop .7s var(--spring) both}
@keyframes pop{from{opacity:0;transform:scale(.7)}}

.hero-visual{position:relative;display:grid;grid-template-columns:200px 1fr 190px;gap:14px;align-items:center;min-height:330px}
.float-cards{display:grid;gap:12px;position:relative;z-index:2}
.fcard{display:flex;align-items:center;gap:10px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;box-shadow:var(--shadow);animation:slideR .8s calc(.4s + var(--d)*.12s) var(--ease) both,bob 6s calc(var(--d)*-1.3s) ease-in-out infinite;transition:transform .3s var(--spring),box-shadow .3s}
.fcard:hover{transform:translateX(6px) scale(1.04);box-shadow:var(--shadow-lg)}
.fcard b{display:block;font-size:.82rem}.fcard small{color:var(--ink-3);font-size:.74rem}
@keyframes slideR{from{opacity:0;transform:translateX(-40px)}}
@keyframes bob{50%{translate:0 -5px}}
.fc-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;flex:none}
.green{--tone:var(--green)}.orange{--tone:var(--orange)}.violet{--tone:var(--violet)}.blue{--tone:var(--blue)}.red{--tone:var(--red)}.amber{--tone:var(--amber)}.pink{--tone:var(--pink)}.teal{--tone:var(--teal)}.sky{--tone:#0ea5e9}
.fc-ic,.sc-ic,.st-ic,.cc-ic,.hc-ic{background:var(--tone)}
.laptop{position:relative;animation:pop .9s .3s var(--spring) both}
.screen{background:#1e1b3a;border-radius:14px 14px 4px 4px;padding:10px;box-shadow:0 30px 60px rgba(30,27,75,.35)}
.screen-in{position:relative;overflow:hidden;aspect-ratio:16/10;border-radius:6px;background:radial-gradient(circle at 30% 30%,#2a2560,#0d0b24 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#fff}
.screen-in b{font-size:1.4rem;font-weight:800;letter-spacing:.02em}.screen-in b em{color:#fb923c;font-style:normal}
.screen-in svg{animation:spin 12s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.scan{position:absolute;left:0;right:0;height:40%;background:linear-gradient(180deg,transparent,rgba(124,58,237,.25),transparent);animation:scan 3.5s ease-in-out infinite}
@keyframes scan{from{top:-40%}to{top:100%}}
.base{height:14px;margin:0 -6%;background:linear-gradient(#d4d7e6,#a7abc2);border-radius:0 0 18px 18px}
.side-cards{display:grid;gap:12px}
.scard{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow);font-size:.8rem;color:var(--ink-2);animation:slideL .8s var(--ease) both}
.s1{animation-delay:.5s}.s2{animation-delay:.62s}.s3{animation-delay:.74s;transition:transform .3s var(--spring)}
.s3:hover{transform:translateY(-4px)}
@keyframes slideL{from{opacity:0;transform:translateX(40px)}}
.scard b{display:block;font-size:1.05rem;color:var(--ink)}.scard b.sm{font-size:.86rem}
.sc-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:#fff}
.sc-go{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;flex:none;transition:transform .3s var(--spring)}
.s3:hover .sc-go{transform:translateX(4px) rotate(-10deg)}
.bars{display:flex;align-items:flex-end;gap:3px;height:36px}
.bars i{width:7px;border-radius:3px;background:linear-gradient(#a855f7,#6366f1);animation:barup 1.2s var(--spring) both}
.bars i:nth-child(1){height:35%;animation-delay:.9s}.bars i:nth-child(2){height:55%;animation-delay:1s}.bars i:nth-child(3){height:75%;animation-delay:1.1s}.bars i:nth-child(4){height:100%;background:linear-gradient(#fb923c,#f97316);animation-delay:1.2s}
@keyframes barup{from{transform:scaleY(0);transform-origin:bottom}}

/* ---------- sections ---------- */
.section{padding:34px 0}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.sec-head h2{font-size:clamp(1.4rem,2.6vw,1.9rem);font-weight:800;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sec-head p{color:var(--ink-3);font-size:.9rem;margin-top:4px}
.sec-head.center{flex-direction:column;align-items:center;text-align:center}
.sec-actions{display:flex;gap:8px;align-items:center}
.kicker{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;letter-spacing:.08em;color:var(--primary);margin-bottom:6px}
.kicker.orange{color:#ea580c}.kicker.red{color:var(--red);background:#fff1f2;border-radius:999px;padding:4px 10px;letter-spacing:0}
.bolt{color:var(--amber);animation:zap 2.4s ease-in-out infinite}
@keyframes zap{0%,90%,100%{transform:none}93%{transform:rotate(-15deg) scale(1.2)}96%{transform:rotate(10deg)}}
.with-ic{display:flex;gap:12px;align-items:center}
.big-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--primary);color:#fff;flex:none}
.center-split{align-items:center}
.center-split .center-title{flex:1;text-align:center}
.center-split .center-title h2{justify-content:center}

.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}

/* quick services */
.quick .wrap{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow)}
.track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 50px)/6);gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 8px}
.track::-webkit-scrollbar{display:none}
.qtile{scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;height:118px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--tone) 7%,#fff));transition:transform .35s var(--spring),box-shadow .35s,border-color .35s}
.reveal.in .qtile{animation:pop .7s calc(var(--i)*.07s) var(--spring) both}
.qtile:hover{transform:translateY(-6px);box-shadow:0 14px 28px color-mix(in srgb,var(--tone) 25%,transparent);border-color:color-mix(in srgb,var(--tone) 40%,#fff)}
.q-ic{color:var(--tone);transition:transform .45s var(--spring)}
.qtile:hover .q-ic{transform:scale(1.18) rotate(-6deg)}
.q-label{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.86rem}
.q-label i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--tone);color:var(--tone);transition:all .3s}
.qtile:hover .q-label i{background:var(--tone);color:#fff}
.offer{position:relative;overflow:hidden;display:flex;align-items:center;gap:16px;margin-top:16px;padding:14px 22px;border-radius:14px;color:#fff;background:linear-gradient(100deg,#3b2fd1,#5b3df5 45%,#7c3aed);flex-wrap:wrap}
.offer::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 50%,rgba(255,255,255,.18),transparent 40%);animation:float 8s ease-in-out infinite}
.offer p{flex:1;font-weight:700;font-size:1.02rem;min-width:220px;position:relative}
.ltd{position:relative;background:#fff;color:var(--primary);font-weight:800;font-size:.7rem;letter-spacing:.06em;padding:6px 12px;border-radius:8px}
.gift{position:relative;color:#fde68a;animation:wiggle 2.6s ease-in-out infinite}
.gift.g2{animation-delay:-1.3s}
@keyframes wiggle{0%,80%,100%{transform:rotate(0)}85%{transform:rotate(-12deg) scale(1.1)}90%{transform:rotate(10deg)}95%{transform:rotate(-6deg)}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:16px;border:1px solid var(--line);border-radius:14px;background:#fff}
.stat{display:flex;align-items:center;gap:14px;padding:16px 20px;justify-content:center}
.stat+.stat{border-left:1px solid var(--line)}
.stat b{display:block;font-size:1.35rem;font-weight:800;color:#2b2f8f;font-variant-numeric:tabular-nums}
.stat span{font-size:.8rem;color:var(--ink-3)}
.st-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;color:#fff;transition:transform .5s var(--spring)}
.stat:hover .st-ic{transform:rotate(-10deg) scale(1.1)}

/* services / banners */
.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:6px 0 18px}
.tab{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;font-weight:700;font-size:.86rem;color:var(--ink-2);transition:all .3s var(--spring)}
.tab:hover{transform:translateY(-2px);border-color:var(--ac);color:var(--ac)}
.tab.on{background:var(--ac);border-color:var(--ac);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--ac) 35%,transparent)}
.panel.on{animation:panelIn .6s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(18px)}}
.banner{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg);background:#fff}
.banner img{width:100%;height:auto}
.panel.on .banner img.kb,.promo.in .banner img.kb{animation:kb 8s var(--ease) both}
@keyframes kb{from{transform:scale(1.06)}to{transform:scale(1)}}
.hot{position:absolute;border:0;background:transparent;border-radius:14px;padding:0;cursor:pointer;transition:box-shadow .3s,background .3s;display:block}
.hot span{position:absolute;right:8px;bottom:6px;display:inline-flex;align-items:center;gap:4px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:700;border-radius:999px;padding:3px 10px;opacity:0;transform:translateY(6px);transition:all .3s var(--spring);pointer-events:none;white-space:nowrap}
.hot:hover,.hot:focus-visible{background:rgba(255,255,255,.14);box-shadow:0 0 0 3px var(--ac,#6366f1),0 0 30px rgba(99,102,241,.45)}
.hot:hover span,.hot:focus-visible span{opacity:1;transform:none}
.btnspot span{display:none}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:12px;margin-top:16px}
.svc{position:relative;display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;overflow:hidden;transition:transform .35s var(--spring),box-shadow .35s,border-color .35s}
.panel.on .svc{animation:rise .6s calc(.15s + var(--i)*.06s) var(--ease) both}
.svc::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--c);transform:scaleY(0);transition:transform .35s var(--ease)}
.svc:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(30,41,99,.12);border-color:color-mix(in srgb,var(--c) 35%,#fff)}
.svc:hover::before{transform:none}
.svc-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--c);color:#fff;flex:none;transition:transform .45s var(--spring)}
.svc:hover .svc-ic{transform:rotate(-8deg) scale(1.08)}
.svc-body{flex:1;min-width:0}
.svc h3{font-size:.98rem;font-weight:800}
.svc p{font-size:.8rem;color:var(--ink-3);margin:3px 0 8px}
.svc-meta{display:flex;justify-content:space-between;gap:4px 10px;font-size:.76rem;align-items:center;flex-wrap:wrap}.svc-meta>*{white-space:nowrap}
.svc-meta span{display:inline-flex;align-items:center;gap:4px;color:var(--c);font-weight:700}
.svc-meta b{color:var(--ink)}
.svc-go{align-self:center;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:0;background:var(--c);color:#fff;flex:none;transition:transform .3s var(--spring)}
.svc-go:hover{transform:scale(1.15) rotate(-12deg)}

/* testimonials */
.carousel{position:relative;padding:0 26px}
.viewport{overflow:hidden;padding:6px 2px 10px}
.strip{display:flex;gap:16px;transition:transform .7s var(--ease)}
.story{flex:0 0 calc((100% - 32px)/3);margin:0;display:flex;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow);transition:transform .35s var(--spring),box-shadow .35s}
.story:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:var(--shadow-lg)}
.avatar{flex:none;width:68px;height:68px;border-radius:14px;display:grid;place-items:center;font-weight:800;font-size:1.4rem;color:#fff;background:linear-gradient(135deg,hsl(var(--h) 70% 55%),hsl(calc(var(--h) + 40) 70% 45%));overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.stars{color:#f59e0b;letter-spacing:2px;font-size:.95rem}.stars span{color:#e5e7eb}
.story blockquote{margin:6px 0 10px;font-size:.84rem;color:var(--ink-2)}
.story figcaption b{display:block;font-size:.9rem}.story figcaption span{font-size:.76rem;color:var(--ink-3)}
.side-arrow{position:absolute;top:42%;z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--primary);display:grid;place-items:center;box-shadow:var(--shadow);transition:transform .3s var(--spring)}
.side-arrow:hover{transform:scale(1.12)}
.side-arrow.l{left:-6px}.side-arrow.r{right:-6px}
.dots{display:flex;justify-content:center;gap:6px;margin-top:8px}
.dots button{width:8px;height:8px;border-radius:5px;border:0;background:#c7cbe6;padding:0;transition:all .4s var(--spring)}
.dots button.on{width:26px;background:var(--primary)}

/* industries */
.ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ind{display:flex;align-items:center;gap:12px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;transition:transform .35s var(--spring),box-shadow .35s,border-color .35s}
.ind.hide{display:none}
.reveal.in .ind:not(.hide){animation:rise .6s calc(var(--k,0)*.05s) var(--ease) both}
.ind:hover{transform:translateY(-5px);box-shadow:0 14px 28px rgba(30,41,99,.12);border-color:color-mix(in srgb,var(--c) 40%,#fff)}
.ind-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:12px;color:var(--c);background:color-mix(in srgb,var(--c) 10%,#fff);flex:none;transition:all .4s var(--spring)}
.ind:hover .ind-ic{background:var(--c);color:#fff;transform:rotate(-8deg)}
.ind-body{flex:1;min-width:0}
.ind-body b{display:block;font-size:.88rem}.ind-body small{display:block;font-size:.74rem;color:var(--ink-3);line-height:1.35}
.ind-body em{display:block;font-style:normal;font-size:.76rem;font-weight:700;color:var(--red);margin-top:4px}
.ind-go{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--indigo-tint);color:var(--primary);transition:transform .3s var(--spring)}
.ind:hover .ind-go{transform:translateX(4px);background:var(--primary);color:#fff}
.isvc-list{display:grid;gap:10px}
.isvc{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;animation:rise .5s calc(var(--i)*.08s) var(--ease) both;transition:transform .3s var(--spring),box-shadow .3s}
.isvc:hover{transform:translateX(4px);box-shadow:var(--shadow)}
.isvc div{flex:1}.isvc b{display:block}.isvc small{color:var(--ink-3);display:inline-flex;gap:4px;align-items:center}
.isvc .price{font-weight:800;color:var(--red);white-space:nowrap}

/* contact */
.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;align-items:start}
.contact-grid>div:first-child{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow)}
.contact h2{font-size:2rem;font-weight:800}
.c-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}
.c-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;border:1px solid var(--line);border-radius:14px;padding:14px 10px;color:var(--ink);transition:transform .35s var(--spring),box-shadow .35s}
.c-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.cc-ic{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;color:#fff;margin-bottom:4px;transition:transform .5s var(--spring)}
.c-card:hover .cc-ic{transform:scale(1.12) rotate(-10deg)}
.c-card b{font-size:.88rem}.c-card .hl{font-size:.78rem;font-weight:700;color:var(--red);word-break:break-word}.c-card small{font-size:.74rem;color:var(--ink-3)}
.map-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow);display:grid;gap:10px}
.map-card h3{display:flex;align-items:center;gap:6px;font-size:1.05rem}.map-card h3 .ic{color:var(--red)}
.map{position:relative;border-radius:14px;overflow:hidden;height:280px;background:#e8ecf5}
.map iframe{width:100%;height:100%;border:0}
.map-zoom{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;background:#fff;border-radius:8px;box-shadow:var(--shadow);overflow:hidden}
.map-zoom button{border:0;background:#fff;width:34px;height:34px;font-size:1.2rem;font-weight:700}.map-zoom button+button{border-top:1px solid var(--line)}
.map-zoom button:hover{background:var(--indigo-tint)}
.map-large{position:absolute;left:10px;bottom:10px;background:#fff;color:var(--primary);font-weight:700;font-size:.78rem;border-radius:8px;padding:6px 10px;box-shadow:var(--shadow)}

/* forms */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:700;color:var(--ink-2)}
.form-grid input,.form-grid select,.form-grid textarea{border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;font-weight:500;color:var(--ink);transition:border-color .2s,box-shadow .2s;width:100%}
.form-grid textarea{resize:vertical}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:#a5b4fc;box-shadow:0 0 0 4px rgba(99,102,241,.12)}
.form-grid .bad{border-color:#f87171!important;animation:shake .4s}
@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
.field-err{color:#dc2626;font-size:.74rem;font-weight:600}
.form-grid .check{flex-direction:row;align-items:flex-start;gap:8px;font-weight:500}
.form-grid .check input{width:auto;margin-top:3px}
.pref{border:0;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}
.pref legend{font-size:.82rem;font-weight:700;color:var(--ink-2);margin-bottom:6px;padding:0}
.pill{flex-direction:row!important}
.pill input{position:absolute;opacity:0;width:1px}
.pill span{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);border-radius:999px;padding:6px 14px;font-weight:700;transition:all .25s var(--spring);cursor:pointer}
.pill input:checked+span{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(1.04)}
.pill input:focus-visible+span{outline:3px solid #a5b4fc}
.form-msg:empty{display:none}
.form-msg{border-radius:10px;padding:10px 12px;font-weight:600;font-size:.86rem;animation:rise .4s var(--ease)}
.form-msg.ok{background:#ecfdf5;color:#047857}.form-msg.err{background:#fef2f2;color:#b91c1c}
.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .7s linear infinite}

/* modal */
.modal{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;overflow:auto;background:rgba(15,23,42,.55);backdrop-filter:blur(4px)}
.modal[hidden]{display:none}
.modal.open{animation:fade .25s ease}
.modal.open .sheet{animation:sheetIn .55s var(--spring)}
.modal.closing{animation:fade .2s ease reverse forwards}
@keyframes fade{from{opacity:0}}
@keyframes sheetIn{from{opacity:0;transform:translateY(40px) scale(.95)}}
.sheet{position:relative;background:#fff;border-radius:20px;width:100%;max-width:640px;padding:24px;box-shadow:0 30px 80px rgba(15,23,42,.35)}
.sheet.narrow{max-width:460px}.sheet.wide{max-width:860px}
.sheet .x{position:absolute;right:14px;top:14px;border:0;background:var(--bg);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;transition:transform .3s var(--spring),background .2s}
.sheet .x:hover{transform:rotate(90deg);background:#fee2e2;color:#b91c1c}
.sheet-head{display:flex;gap:12px;align-items:center;margin-bottom:16px;padding-right:40px}
.sheet-head h2{font-size:1.3rem}
.sheet-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;color:#fff;background:var(--sc,var(--primary));flex:none}
.done{text-align:center;padding:10px 0}
.done-ic{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 12px;border-radius:50%;background:#dcfce7;color:#16a34a;animation:pop .6s var(--spring)}
.done-ic svg path{stroke-dasharray:30;stroke-dashoffset:30;animation:draw .6s .25s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.done h2{margin-bottom:6px}.done .ref{color:var(--primary);font-size:1.1rem}
.done-actions{display:flex;gap:10px;justify-content:center;margin-top:16px}
.qs-cats{display:grid;gap:18px}
.qs-cat h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin-bottom:8px}
.qs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.qs-item{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 12px;animation:rise .45s calc(var(--i)*.04s) var(--ease) both;transition:transform .3s var(--spring),box-shadow .3s,border-color .3s}
.qs-item:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--c)}
.qs-item .mini{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--c);color:#fff;flex:none}
.qs-item .mini svg{width:18px;height:18px}
.qs-item b{display:block;font-size:.86rem}.qs-item small{color:var(--ink-3);font-size:.74rem}

/* help bar + footer */
.helpbar{margin-top:20px;background:linear-gradient(90deg,#eef0ff,#f5f3ff)}
.helpbar-in{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:14px;align-items:center;padding:22px 20px}
.help-lead{display:flex;gap:14px;align-items:center}
.help-lead h2{font-size:1.15rem}.help-lead p{font-size:.82rem;color:var(--ink-3)}
.help-ic{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#fff;color:var(--primary);box-shadow:var(--shadow);flex:none;animation:ring 3s ease-in-out infinite}
@keyframes ring{0%,85%,100%{transform:none}88%{transform:rotate(-14deg)}91%{transform:rotate(12deg)}94%{transform:rotate(-8deg)}}
.help-card{display:flex;gap:10px;align-items:center;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;color:var(--ink);transition:transform .35s var(--spring),box-shadow .35s}
.help-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.help-card b{display:block;font-size:.84rem}.help-card small{display:block;font-size:.72rem;color:var(--ink-3);word-break:break-word}
.hc-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#fff;flex:none}
.footer{background:var(--navy);color:#c7cde6;padding:38px 0 0}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.2fr 1fr 1.4fr;gap:24px}
.footer .brand b i{color:#ff3b30}.footer .brand b em{color:#ffd52e;text-shadow:none}.footer .brand small{color:#ffd52e!important}.footer .brand small{color:#9aa3c7}
.f-brand p{font-size:.84rem;margin:12px 0}
.footer h3{color:#fff;font-size:.95rem;margin-bottom:10px}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:.84rem}
.footer a{color:#c7cde6;transition:color .2s,padding .25s}
.footer ul a:hover,.footer ul .linkish:hover{color:#fff;padding-left:4px}
.social{display:flex;gap:8px}
.social a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);transition:transform .3s var(--spring),background .3s}
.social a:hover{transform:translateY(-4px);background:var(--primary);color:#fff}
.subscribe{display:flex;margin-top:10px;background:#fff;border-radius:10px;padding:4px}
.subscribe input{flex:1;min-width:0;border:0;padding:8px 10px;outline:none;color:var(--ink)}
.subscribe .btn{border-radius:8px}
.footer .form-msg{margin-top:8px}
.footer-bottom{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.1);margin-top:28px;padding:16px 20px;font-size:.8rem}
.heart{color:#f43f5e;font-style:normal;display:inline-block;animation:beat 1.4s ease-in-out infinite}
@keyframes beat{15%{transform:scale(1.35)}30%{transform:scale(1)}45%{transform:scale(1.2)}60%{transform:none}}
.wa-float{display:none!important;position:fixed;right:18px;bottom:18px;z-index:70;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#22c55e;color:#fff;box-shadow:0 10px 26px rgba(34,197,94,.45);animation:pulse 2.4s infinite}
.wa-float:hover{transform:scale(1.08)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.55)}70%{box-shadow:0 0 0 16px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
.to-top{position:fixed;right:24px;bottom:86px;z-index:70;width:44px;height:44px;border-radius:50%;border:0;background:var(--primary);color:#fff;display:grid;place-items:center;box-shadow:var(--shadow-lg);opacity:0;transform:translateY(20px) scale(.8);pointer-events:none;transition:all .35s var(--spring)}
.to-top .up{transform:rotate(90deg)}
.to-top.show{opacity:1;transform:none;pointer-events:auto}
.toast{position:fixed;left:50%;bottom:24px;z-index:120;transform:translateX(-50%);background:var(--navy);color:#fff;padding:12px 18px;border-radius:12px;font-weight:600;box-shadow:var(--shadow-lg);max-width:calc(100% - 32px);animation:toastIn .45s var(--spring)}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,24px) scale(.9)}}

/* inner pages */
.page-hero{padding:46px 0 30px;background:linear-gradient(135deg,#eef0ff,#faf5ff);text-align:center}
.page-hero h1{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;animation:rise .8s var(--ease) both}
.page-hero p{color:var(--ink-2);max-width:640px;margin:10px auto 0;animation:rise .8s .12s var(--ease) both}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}
.narrow-wrap{max-width:560px;margin:30px auto}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px auto}
.prose h2{font-size:1.2rem;margin:20px 0 8px}.prose p,.prose li{color:var(--ink-2);font-size:.95rem}.prose p+p{margin-top:10px}
.jobs{display:grid;gap:12px}
.job{display:flex;gap:14px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff;transition:transform .3s var(--spring),box-shadow .3s}
.job:hover{transform:translateX(4px);box-shadow:var(--shadow)}
.job div{flex:1}.job small{color:var(--ink-3)}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.tags span{font-size:.72rem;font-weight:700;background:var(--indigo-tint);color:var(--primary);border-radius:6px;padding:2px 8px}
.timeline{display:grid;gap:0;margin-top:16px}
.tl{position:relative;display:flex;gap:12px;padding:0 0 18px}
.tl::before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--line)}
.tl:last-child::before{display:none}
.tl i{flex:none;width:28px;height:28px;border-radius:50%;background:var(--indigo-tint);display:grid;place-items:center;color:var(--primary);font-style:normal;font-weight:800;font-size:.8rem;animation:pop .5s calc(var(--i)*.12s) var(--spring) both}
.tl.on i{background:var(--primary);color:#fff}
.tl b{display:block}.tl small{color:var(--ink-3)}
.status{display:inline-block;border-radius:999px;padding:3px 10px;font-weight:800;font-size:.75rem;background:var(--indigo-tint);color:var(--primary)}
.status.Completed,.status.Verified{background:#dcfce7;color:#15803d}.status.Cancelled,.status.Rejected{background:#fee2e2;color:#b91c1c}.status.In.Progress,.status.Contacted{background:#fef3c7;color:#b45309}
.tbl{width:100%;border-collapse:collapse;font-size:.88rem}
.tbl th,.tbl td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl th{font-size:.76rem;color:var(--ink-3);background:var(--bg)}
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.upi-box{text-align:center}
.qr{display:inline-block;padding:12px;background:#fff;border-radius:14px;box-shadow:var(--shadow);margin:12px auto}
.qr img,.qr canvas{width:200px;height:200px}
.upi-id{font-weight:800;font-size:1.05rem;color:var(--primary)}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .search{display:none}
  .hero-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr 1fr}.f-brand{grid-column:1/-1}
  .helpbar-in{grid-template-columns:1fr 1fr}.help-lead{grid-column:1/-1}
  .ind-grid{grid-template-columns:repeat(3,1fr)}
  .story{flex-basis:calc((100% - 16px)/2)}
}
@media (max-width:900px){
  .menu-btn{display:block;margin-left:auto}
  .mainnav{position:fixed;top:72px;left:0;right:0;flex-direction:column;background:#fff;padding:10px 16px 16px;border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);transform:translateY(-12px);opacity:0;pointer-events:none;transition:all .3s var(--ease)}
  .mainnav.open{transform:none;opacity:1;pointer-events:auto}
  .mainnav a{flex-direction:row;gap:10px;font-size:.95rem;padding:10px}
  .mainnav a.on::after{display:none}
  .auth{display:none}
  .nav-auth{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;padding-top:8px}
  .nav-auth .btn{color:#fff;flex-direction:row}.nav-auth .btn-outline{color:var(--primary)}
  .hero-visual{grid-template-columns:1fr 1fr}
  .laptop{grid-column:1/-1;grid-row:1;max-width:420px;justify-self:center;width:100%}
  .contact-grid,.two-col{grid-template-columns:1fr}
  .track{grid-auto-columns:42%}
  .stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){border-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:900px){
  .auth{display:flex!important;margin-left:auto;gap:6px}
  .auth .btn{padding:7px 11px;font-size:.8rem;border-radius:9px}
  .menu-btn{margin-left:0}
  .nav-auth{display:none!important}
}
@media (max-width:420px){
  .auth .btn .ic{display:none}
  .auth .btn{padding:7px 10px;font-size:.78rem}
  .brand b{font-size:1rem}.brand .logo-img{width:36px;height:36px}
  .topbar-in{gap:8px}
}
@media (max-width:360px){
  .brand > span{display:none}
  .footer .brand > span{display:inline}
  .helpbar-in,.footer-grid{grid-template-columns:minmax(0,1fr)!important}
  .footer-grid>*,.helpbar-in>*{min-width:0}
  .help-card small{overflow-wrap:anywhere}
  .search{min-width:0;width:100%}
  .search input{min-width:0;width:100%}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .brand b{font-size:1.1rem}.brand small{display:none}
  .hero{padding-top:28px}
  .hero-visual{grid-template-columns:1fr}
  .side-cards{grid-template-columns:1fr 1fr}.s3{grid-column:1/-1}
  .ind-grid{grid-template-columns:1fr}
  .c-cards{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .story{flex-basis:100%}
  .carousel{padding:0}.side-arrow{display:none}
  .helpbar-in,.footer-grid{grid-template-columns:1fr}
  .offer{justify-content:center;text-align:center}.gift{display:none}
  .sheet{padding:18px}
  .hot span{display:none}
  .sec-actions .circ{display:none}
}


/* ---------- hero = Business Registration banner ---------- */
.hero-banner{padding:22px 0 26px}
.hero-pic{animation:heroIn 1s var(--ease) both}
@keyframes heroIn{from{opacity:0;transform:translateY(24px) scale(.98)}}
.hero-pic img.kb{animation:kb 9s var(--ease) both}
.hero-shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);transform:translateX(-120%);animation:heroShine 6s 1.2s ease-in-out infinite}
@keyframes heroShine{30%,100%{transform:translateX(120%)}}
.hero-pic .hot{animation:spotIn .6s var(--spring) both}
.hero-pic .hot:nth-of-type(1){animation-delay:.5s}.hero-pic .hot:nth-of-type(2){animation-delay:.6s}.hero-pic .hot:nth-of-type(3){animation-delay:.7s}.hero-pic .hot:nth-of-type(4){animation-delay:.8s}.hero-pic .hot:nth-of-type(5){animation-delay:.9s}.hero-pic .hot:nth-of-type(6){animation-delay:1s}
@keyframes spotIn{from{box-shadow:0 0 0 3px rgba(99,102,241,.7)}}
.pulse-spot{animation:spotPulse 2.6s 1.5s ease-in-out infinite!important}
@keyframes spotPulse{0%,100%{box-shadow:0 0 0 0 rgba(249,115,22,.0)}50%{box-shadow:0 0 0 6px rgba(249,115,22,.35)}}
.hero-mobile{display:none}
.mainnav a{white-space:nowrap}
@media (min-width:901px) and (max-width:1400px){.mainnav a{padding:6px 8px}.search{max-width:280px}.topbar-in{gap:12px}}
.btn-orange{background:linear-gradient(135deg,#ff7a1a,#f97316 50%,#ea580c)}
.btn-orange:hover{box-shadow:0 10px 22px rgba(249,115,22,.35)}
.reg-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.reg-chip{display:flex;align-items:center;gap:8px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 10px;box-shadow:var(--shadow);animation:rise .6s calc(.3s + var(--k,0)*.06s) var(--ease) both}
.reg-chip:nth-child(2){--k:1}.reg-chip:nth-child(3){--k:2}.reg-chip:nth-child(4){--k:3}.reg-chip:nth-child(5){--k:4}.reg-chip:nth-child(6){--k:5}
.reg-chip:active{transform:scale(.97)}
.reg-chip .fc-ic{width:30px;height:30px;border-radius:8px}
.reg-chip b{display:block;font-size:.82rem}.reg-chip small{font-size:.72rem;color:var(--tone);font-weight:700}
.services{padding-top:30px}
@media (max-width:760px){
  .hero-mobile{display:grid;gap:12px;margin-top:14px}
  .hero-mobile .cta-row{margin:0}
  .hero-pic .hot span{display:none}
}

/* ---------- Quick services marquee ---------- */
.marquee{position:relative;overflow:hidden;padding:6px 0 10px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);touch-action:pan-y;cursor:grab}
.marquee.dragging{cursor:grabbing}
.marquee-track{display:flex;gap:12px;width:max-content;will-change:transform}
.marquee .qtile{flex:0 0 200px;height:118px}
.marquee.dragging .qtile{pointer-events:none}
@media (max-width:640px){.marquee .qtile{flex-basis:132px;height:104px}.marquee-track{gap:8px}}

/* stories inside the Quick Services card (where the offer banner was) */
.stories-in{margin-top:20px;padding-top:20px;border-top:1px dashed var(--line)}
.stories-in .sec-head{margin-bottom:12px}

/* =====================================================================
   MOBILE (Android & iOS) – app-like layout
   ===================================================================== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-tap-highlight-color:transparent}
button,a,.hot,.tab,.qtile{touch-action:manipulation}
.topbar{top:env(safe-area-inset-top,0px)}
.bottombar{display:none}
.sheet .grab{display:none}
/* hover effects only where a real pointer exists (no "stuck" hovers on phones) */
@media (hover:none){
  .svc:hover,.ind:hover,.qtile:hover,.story:hover,.c-card:hover,.help-card:hover,.fcard:hover,.btn:hover,.tab:hover{transform:none}
  .svc:active,.ind:active,.qtile:active,.c-card:active,.help-card:active,.fcard:active{transform:scale(.97);transition-duration:.1s}
}
@media (max-width:1100px){
  .topbar-in{flex-wrap:wrap;height:auto;padding-block:10px;row-gap:8px}
  .search{display:flex;order:5;flex:1 1 100%;max-width:none}
  .topbar{position:sticky}
}
@media (max-width:900px){
  .topbar-in{position:relative}
  .mainnav{position:absolute;top:100%;left:0;right:0}
  /* bottom app bar */
  .bottombar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:80;background:rgba(255,255,255,.96);backdrop-filter:blur(14px) saturate(1.6);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));box-shadow:0 -8px 24px rgba(30,41,99,.08)}
  .bb-item{display:flex;flex-direction:column;align-items:center;gap:2px;border:0;background:none;color:var(--ink-3);font-size:.68rem;font-weight:700;padding:4px 0;transition:color .2s,transform .2s var(--spring)}
  .bb-item:active{transform:scale(.9);color:var(--primary)}
  .bb-main{position:relative;color:var(--primary)}
  .bb-fab{display:grid;place-items:center;width:54px;height:54px;margin-top:-26px;border-radius:50%;color:#fff;background:linear-gradient(135deg,#5b4cf0,#7c3aed);box-shadow:0 10px 22px rgba(91,76,240,.45),0 0 0 5px #fff;animation:fabPulse 3s ease-in-out infinite}
  @keyframes fabPulse{0%,100%{box-shadow:0 10px 22px rgba(91,76,240,.45),0 0 0 5px #fff}50%{box-shadow:0 10px 22px rgba(91,76,240,.45),0 0 0 5px #fff,0 0 0 12px rgba(124,58,237,.15)}}
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}
  .wa-float{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:14px;width:50px;height:50px}
  .to-top{bottom:calc(144px + env(safe-area-inset-bottom,0px));right:17px}
  .toast{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
  /* tabs: one swipeable row */
  .tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;margin-inline:-20px;padding:4px 20px 8px}
  .tabs::-webkit-scrollbar{display:none}
  .tab{flex:none;scroll-snap-align:center}
  .swipe-hint{display:flex}
}
.swipe-hint{display:none;justify-content:center;gap:6px;align-items:center;font-size:.74rem;font-weight:700;color:var(--ink-3);margin-top:8px}
.swipe-hint i{display:inline-block;animation:nudge 1.6s ease-in-out infinite;font-style:normal}
@keyframes nudge{50%{transform:translateX(6px)}}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .tabs{margin-inline:-16px;padding-inline:16px}
  .topbar-in{gap:8px 10px}
  .brand .logo-img{width:40px;height:40px}
  /* iOS: 16px inputs prevent auto-zoom */

  .hero{padding:22px 0 26px}
  .hero-title{font-size:2rem;margin:12px 0 8px}
  .lead{font-size:.95rem}
  .cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}
  .cta-row .btn{padding:12px 10px;font-size:.92rem}
  .trust{gap:10px 14px}
  .hero-visual{grid-template-columns:1fr;gap:12px;min-height:0}
  .laptop{max-width:260px;grid-row:auto}
  .float-cards{grid-template-columns:1fr 1fr;gap:8px}
  .fcard{padding:8px;gap:8px}.fcard b{font-size:.76rem}.fc-ic{width:32px;height:32px}
  .side-cards{grid-template-columns:1fr 1fr;gap:8px}
  .scard{padding:10px}
  .section{padding:24px 0}
  .quick .wrap{border-radius:0;border-inline:0;padding:18px 16px;box-shadow:none}
  .track{grid-auto-columns:31%;gap:8px}
  .qtile{height:104px;gap:10px;padding:6px}
  .q-label{flex-direction:column;gap:4px;font-size:.74rem;text-align:center}
  .q-label i{display:none}
  .offer{padding:14px;gap:10px}
  .offer p{font-size:.92rem;min-width:0}
  .stat{padding:12px;gap:10px;justify-content:flex-start}
  .stat b{font-size:1.15rem}.st-ic{width:38px;height:38px}
  .banner{border-radius:12px}
  .svc{padding:12px}
  .sec-head h2{font-size:1.35rem}
  .center-split .center-title{text-align:left}.center-split .center-title h2{justify-content:flex-start}
  .ind{padding:12px}
  .contact-grid>div:first-child{padding:16px;border-radius:16px}
  .map{height:220px}
  .helpbar-in{padding:18px 16px}
  /* modals become bottom sheets */
  .modal{align-items:flex-end;padding:0}
  .sheet,.sheet.narrow,.sheet.wide{max-width:none;border-radius:22px 22px 0 0;max-height:92dvh;max-height:92vh;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:12px 16px calc(18px + env(safe-area-inset-bottom,0px))}
  .modal.open .sheet{animation:sheetUp .45s var(--ease)}
  @keyframes sheetUp{from{transform:translateY(100%)}}
  .modal.closing{animation:fade .2s ease reverse forwards}
  .sheet .grab{display:block;width:44px;height:5px;border-radius:3px;background:#d4d7e6;margin:0 auto 10px}
  .sheet .x{top:10px;right:10px}
  .sheet-head{margin-top:6px}
  .pref{gap:6px}.pill span{padding:6px 10px}
  .footer{padding-top:28px}
  .footer-grid{gap:18px}
}
@media (max-width:380px){
  .float-cards,.side-cards{grid-template-columns:1fr}
  .track{grid-auto-columns:44%}
}

/* =====================================================================
   SERVICE FORM MODAL (Apply for Service / General Enquiry) – TekFinoTax style
   ===================================================================== */
.svc-modal .svc-sheet{padding:0;overflow:hidden;max-width:820px;border-radius:16px}
.svc-modal .svc-sheet.narrow{max-width:520px}
.svc-head{display:flex;align-items:center;gap:12px;background:#fc8019;padding:18px 24px;position:sticky;top:0;z-index:2}
.svc-head h2{flex:1;font-size:1.35rem;font-weight:800;color:#14213d;letter-spacing:-.01em}
.svc-x{width:40px;height:40px;border-radius:50%;border:0;background:#d03a00;color:#fff;font-size:1rem;font-weight:800;display:grid;place-items:center;flex:none;transition:transform .3s var(--spring),background .2s}
.svc-x:hover{transform:rotate(90deg) scale(1.08);background:#b02f00}
.svc-body{padding:22px 24px 26px}
.svc-tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.svc-tab{border:2px solid #fc8019;background:#fc8019;color:#fff;border-radius:12px;padding:12px;font-weight:800;font-size:.98rem;box-shadow:0 6px 16px rgba(252,128,25,.28);transition:all .25s var(--spring)}
.svc-tab:hover{transform:translateY(-2px)}
.svc-tab.on{background:#0f2341;border-color:#0b1a33;color:#fff;box-shadow:0 6px 18px rgba(15,35,65,.25)}
.svc-form{display:grid;gap:14px}
.svc-form[hidden]{display:none}
.svc-form .frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.svc-form label{display:flex;flex-direction:column;gap:7px;font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#3b4352}
.svc-form label i{font-style:normal;color:#dc2626}
.svc-form input,.svc-form select,.svc-form textarea{text-transform:none;letter-spacing:0;font-weight:500;font-size:1rem;color:var(--ink);background:#fff;border:2px solid #e3e5ea;border-radius:10px;padding:11px 14px;min-height:48px;width:100%;transition:border-color .2s,box-shadow .2s}
.svc-form textarea{min-height:96px;resize:vertical}
.svc-form input::placeholder,.svc-form textarea::placeholder{color:#9aa1ad}
.svc-form input:focus,.svc-form select:focus,.svc-form textarea:focus{outline:none;border-color:#fc8019;box-shadow:0 0 0 4px rgba(252,128,25,.15)}
.svc-form select:disabled{background:#f6f7f9;color:#444}
.svc-form .bad{border-color:#f87171!important;animation:shake .4s}
.svc-form .field-err{text-transform:none;letter-spacing:0}
.doc-box{background:#eef6ff;border:1.5px solid #c5ddf7;border-radius:12px;padding:14px 18px}
.doc-box h5{margin:0 0 8px;font-size:.88rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#1565c0}
.doc-box ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:.9rem;color:#334155}
.doc-box li{display:flex;gap:9px;align-items:baseline;animation:rise .4s var(--ease) both}
.doc-box li::before{content:"✓";color:#16a34a;font-weight:800}
.doc-box li:nth-child(2){animation-delay:.04s}.doc-box li:nth-child(3){animation-delay:.08s}.doc-box li:nth-child(4){animation-delay:.12s}.doc-box li:nth-child(5){animation-delay:.16s}.doc-box li:nth-child(6){animation-delay:.2s}
.extra-box{background:#f0f7ff;border:2px solid #90caf9;border-radius:12px;padding:14px 16px;display:grid;gap:12px}
.extra-box>b{font-size:.84rem;color:#1565c0}.extra-box>b span{color:#fc8019}
.upload-box{background:#f0f7ff;border:2px dashed #90caf9;border-radius:12px;padding:16px 18px}
.up-head{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.up-head>span{font-size:1.5rem}.up-head b{display:block;color:#1565c0;font-size:.95rem}.up-head small{color:#64748b;font-size:.8rem}
.svc-form .up-btn{display:inline-flex;flex-direction:row;align-items:center;gap:8px;background:#1976d2;color:#fff;border-radius:8px;padding:10px 18px;font-size:.85rem;letter-spacing:0;text-transform:none;cursor:pointer;transition:transform .2s var(--spring)}
.svc-form .up-btn:hover{transform:translateY(-2px)}
.up-status{font-size:.8rem;color:#64748b;margin-left:10px}
.up-list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.up-list:empty{display:none}
.up-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid #d6e6f8;border-radius:8px;padding:7px 10px;font-size:.85rem;animation:rise .3s var(--ease)}
.up-list li span{min-width:0;overflow-wrap:anywhere}.up-list small{color:#64748b}
.up-list button{border:0;background:#fee2e2;color:#b91c1c;border-radius:6px;width:28px;height:28px;flex:none}
.svc-form .consent-box{flex-direction:row;align-items:flex-start;gap:10px;background:#fff8e1;border:1.5px solid #ffd54f;border-radius:10px;padding:12px 14px;font-size:.85rem;font-weight:500;letter-spacing:0;text-transform:none;color:#374151;cursor:pointer}
.svc-form .consent-box input{width:17px;height:17px;min-height:0;margin-top:2px;accent-color:#fc8019;flex:none}
.svc-actions{display:flex;gap:12px;flex-wrap:wrap}
.svc-btn{flex:1;min-width:150px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:14px 18px;font-weight:800;font-size:1rem;color:#fff;text-decoration:none;transition:transform .25s var(--spring),box-shadow .25s,filter .2s}
.svc-btn:hover{transform:translateY(-2px);filter:brightness(1.05)}
.svc-btn:active{transform:scale(.97)}
.svc-btn.orange{background:#fc8019;box-shadow:0 8px 18px rgba(252,128,25,.3)}
.svc-btn.yellow{background:#ffc62e;color:#14213d;box-shadow:0 8px 18px rgba(255,198,46,.35)}
.svc-btn.blue{background:#1976d2;box-shadow:0 8px 18px rgba(25,118,210,.3)}
.svc-btn.green{background:#25d366;box-shadow:0 8px 18px rgba(37,211,102,.3)}
.svc-btn:disabled{opacity:.7;cursor:progress;transform:none}
.svc-links{display:flex;gap:6px;margin-top:8px}
.svc-link{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:4px 10px;font-size:.76rem;font-weight:800;transition:all .2s var(--spring)}
.svc-link.apply{color:#c2410c;border-color:#fed7aa}.svc-link.apply:hover{background:#fc8019;color:#fff;border-color:#fc8019}
.svc-link.enq{color:#1565c0;border-color:#bfdbfe}.svc-link.enq:hover{background:#1976d2;color:#fff;border-color:#1976d2}
.svc-badge{justify-self:start;background:#e3f2fd;color:#1565c0;border-radius:999px;padding:5px 14px;font-size:.78rem;font-weight:800;letter-spacing:.05em}
.svc-modal .done{padding:16px 0 4px}
@media (max-width:640px){
  .svc-modal .svc-sheet{border-radius:20px 20px 0 0}
  .svc-head{padding:14px 16px}.svc-head h2{font-size:1.1rem}
  .svc-body{padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px))}
  .svc-tabs{gap:8px}.svc-tab{font-size:.85rem;padding:10px 6px}
  .svc-form .frow{grid-template-columns:1fr}
  .svc-actions{flex-direction:column}
}

/* ---------- compact service forms (≈60% of the previous size) ---------- */
.svc-modal .svc-sheet{max-width:520px}
.svc-modal .svc-sheet.narrow{max-width:420px}
.svc-head{padding:11px 16px;gap:10px}
.svc-head h2{font-size:1rem}
.svc-x{width:30px;height:30px;font-size:.8rem}
.svc-body{padding:13px 16px 16px}
.svc-tabs{gap:8px;margin-bottom:11px}
.svc-tab{padding:8px 6px;font-size:.78rem;border-radius:9px;box-shadow:0 4px 10px rgba(252,128,25,.25)}
.svc-tab.on{box-shadow:0 4px 12px rgba(15,35,65,.22)}
.svc-form{gap:9px}
.svc-form .frow{gap:9px}
.svc-form label{gap:4px;font-size:.6rem;letter-spacing:.05em}
.svc-form input,.svc-form select,.svc-form textarea{font-size:.8rem;min-height:34px;padding:6px 10px;border-width:1.5px;border-radius:8px}
.svc-form textarea{min-height:58px}
.doc-box{padding:9px 13px;border-radius:10px}
.doc-box h5{font-size:.66rem;margin-bottom:5px}
.doc-box ul{font-size:.72rem;gap:2px}
.extra-box{padding:9px 11px;gap:8px;border-width:1.5px;border-radius:10px}
.extra-box>b{font-size:.66rem}
.upload-box{padding:10px 12px;border-width:1.5px;border-radius:10px}
.up-head{gap:8px;margin-bottom:7px}.up-head>span{font-size:1.1rem}.up-head b{font-size:.74rem}.up-head small{font-size:.62rem}
.svc-form .up-btn{padding:6px 12px;font-size:.7rem}
.up-status{font-size:.66rem}
.up-list li{font-size:.72rem;padding:5px 8px}.up-list button{width:24px;height:24px}
.svc-form .consent-box{padding:8px 11px;font-size:.66rem;gap:8px}
.svc-form .consent-box input{width:14px;height:14px}
.svc-actions{gap:8px}
.svc-btn{min-width:120px;padding:9px 12px;font-size:.8rem;border-radius:8px}
.svc-badge{font-size:.62rem;padding:3px 10px}
.svc-modal .done-ic{width:62px;height:62px}
.svc-modal .done h2{font-size:1.1rem}
.svc-modal .done p{font-size:.85rem}
.svc-form .field-err{font-size:.62rem}
/* contact section + pay page use the same compact form */
.contact-form.svc-form label{font-size:.62rem}
/* phones (Android & iPhone): two columns stay side by side like the reference screen */
@media (max-width:640px){
  .svc-modal .svc-sheet,.svc-modal .svc-sheet.narrow{max-width:none;max-height:94dvh;max-height:94vh}
  .svc-head{padding:10px 12px}.svc-head h2{font-size:.92rem}
  .svc-body{padding:10px 12px calc(14px + env(safe-area-inset-bottom,0px))}
  .svc-form .frow{grid-template-columns:1fr 1fr;gap:8px}
  .svc-form label{font-size:.56rem}
  .svc-actions{flex-direction:row}
  .svc-btn{min-width:0;font-size:.76rem;padding:9px 8px}
  .svc-tab{font-size:.72rem;padding:8px 4px}
}
@media (max-width:340px){.svc-form .frow{grid-template-columns:1fr}}

/* pay page */
.pay-grid{align-items:start}
.pay-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.pay-head h2{font-size:1.1rem}
.pay-chips{display:flex;gap:4px;flex-wrap:wrap}.pay-chips i{font-style:normal;font-size:.62rem;font-weight:800;background:var(--indigo-tint);color:var(--primary);border-radius:6px;padding:2px 7px}
.notice-test{background:#fef3c7;color:#92400e;border-radius:8px;padding:6px 10px;font-size:.75rem;font-weight:700;margin-bottom:10px}
.pay-for{font-size:.8rem;background:#fff7ed;border-radius:8px;padding:6px 10px}
.scan-box{text-align:center;background:#f8fafc;border-radius:12px;padding:12px}
.scan-img{width:190px;height:auto;margin:0 auto 6px;image-rendering:auto;border-radius:8px;box-shadow:var(--shadow)}
.pay-result{text-align:center}.pay-result .dl{text-align:left;max-width:360px;margin-inline:auto}
.otp-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.otp-row #otpMsg{grid-column:1/-1}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}
.dl{display:grid;grid-template-columns:140px 1fr;gap:6px 12px;font-size:.9rem}.dl dt{color:var(--ink-3);font-weight:600}.dl dd{margin:0;word-break:break-word}
/* ---------- registration steps + OTP screen ---------- */
.reg-steps{list-style:none;padding:0;margin:0 0 14px;display:grid;grid-template-columns:1fr 1fr;gap:8px;counter-reset:none}
.reg-steps li{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:9px 12px;font-weight:700;font-size:.85rem;color:var(--ink-3)}
.reg-steps b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--line);color:var(--ink-2);font-size:.8rem;flex:none}
.reg-steps li.on{border-color:#fc8019;color:var(--ink)}.reg-steps li.on b{background:#fc8019;color:#fff}
.reg-steps li.done{color:#15803d}.reg-steps li.done b{background:#16a34a;color:#fff}
.otp-card{text-align:center;display:grid;gap:12px;justify-items:center}
.otp-card h2{font-size:1.3rem}
.otp-ic{font-size:2.4rem;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#fff7ed;animation:pop .6s var(--spring)}
.otp-card .form-msg{width:100%}
.otp-boxes{display:flex;gap:8px;justify-content:center}
.otp-box{width:46px;height:54px;border:2px solid #e3e5ea;border-radius:12px;text-align:center;font-size:1.4rem;font-weight:800;color:var(--ink);background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s var(--spring)}
.otp-box:focus{outline:none;border-color:#fc8019;box-shadow:0 0 0 4px rgba(252,128,25,.15);transform:translateY(-2px)}
.otp-box.bad{border-color:#f87171;animation:shake .4s}
.otp-timer{min-height:1.2em}
.otp-links{display:flex;justify-content:space-between;gap:10px;width:100%;flex-wrap:wrap;font-size:.85rem}
.otp-resend{color:var(--primary);font-weight:700}.otp-resend:disabled{color:var(--ink-3);cursor:default}
@media (max-width:400px){.otp-box{width:40px;height:48px;font-size:1.2rem}.otp-boxes{gap:6px}}

/* ===== Full-page service forms (apply.php), forms directory (forms.php), landing "Apply Online" ===== */
.svc-full{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(20,33,61,.12);color:#14213d;font-weight:800;font-size:.95rem;flex:none;transition:transform .3s var(--spring),background .2s}
.svc-full:hover{background:rgba(20,33,61,.22);transform:scale(1.1)}
.svc-sheet.inline{padding:0;overflow:hidden;max-width:none;border-radius:16px;box-shadow:var(--shadow-lg)}
.svc-sheet.inline .svc-head{position:static}
.svc-sheet.inline .done{padding:16px 0 4px}
.svc-sheet.inline .done-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.apply-page{padding-top:22px}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.82rem;color:var(--ink-3);margin-bottom:16px}
.crumbs a{color:var(--primary);font-weight:600}.crumbs b{color:var(--ink)}
.apply-grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,620px);gap:24px;justify-content:center;align-items:start}
.apply-info{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow);position:sticky;top:90px}
.ai-kicker{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#c2410c;background:#fff1e6;padding:4px 10px;border-radius:999px}
.apply-info h1{font-size:1.4rem;line-height:1.25;margin:10px 0 6px}
.apply-info .muted{font-size:.88rem}
.ai-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;padding:10px 12px;background:var(--bg);border-radius:10px;font-size:.85rem;color:var(--ink-2)}
.ai-meta span{display:inline-flex;gap:6px;align-items:center}.ai-meta b{color:var(--green)}
.ai-steps{list-style:none;counter-reset:st;padding:0;margin:14px 0;display:grid;gap:10px}
.ai-steps li{counter-increment:st;display:grid;grid-template-columns:28px 1fr;column-gap:10px;font-size:.86rem}
.ai-steps li::before{content:counter(st);grid-row:span 2;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fc8019;color:#fff;font-weight:800;font-size:.8rem}
.ai-steps small{color:var(--ink-3);font-size:.76rem}
.ai-help{display:flex;flex-wrap:wrap;gap:8px}
.apply-more{margin-top:28px}.apply-more h2{font-size:1.1rem;margin-bottom:12px}
.af-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.af-item{display:flex;gap:10px;align-items:center;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:12px;transition:transform .25s var(--spring),box-shadow .2s,border-color .2s}
.af-item:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--c,var(--primary))}
.af-item b{display:block;font-size:.86rem}.af-item small{color:var(--ink-3);font-size:.74rem}
.af-ic{width:36px;height:36px;flex:none;border-radius:10px;display:grid;place-items:center;color:var(--c,var(--primary));background:color-mix(in srgb,var(--c,var(--primary)) 12%,#fff)}
.af-ic svg{width:18px;height:18px}

.forms-page h1{font-size:clamp(1.5rem,3vw,2.1rem)}
.fp-tools{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin:18px 0 12px}
.fp-search{flex:1;max-width:480px;min-width:0;display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:0 16px;color:var(--ink-3);transition:border-color .2s,box-shadow .2s}
.fp-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--indigo-tint)}
.fp-search input{flex:1;min-width:0;border:0;outline:0;padding:11px 0;font:inherit;background:none}
.fp-enq{flex:none}
.fp-chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:20px}
.fp-chip{border:1px solid var(--line);background:#fff;padding:7px 14px;border-radius:999px;font-size:.82rem;font-weight:700;color:var(--ink-2);transition:all .2s}
.fp-chip:hover{border-color:#fc8019;color:#c2410c}
.fp-chip.on{background:#fc8019;border-color:#fc8019;color:#fff;box-shadow:0 6px 16px rgba(252,128,25,.3)}
.fp-cat{margin-bottom:26px;scroll-margin-top:90px}
.fp-cat h2{font-size:1.1rem;display:flex;align-items:center;gap:8px;margin-bottom:12px}
.fp-cat h2 small{font-size:.72rem;font-weight:700;color:var(--ink-3);background:var(--bg);padding:3px 8px;border-radius:999px}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.fp-card{display:flex;align-items:center;gap:10px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px;border-left:3px solid var(--c,var(--primary));transition:transform .25s var(--spring),box-shadow .2s;animation:fadeUp .4s var(--ease) both}
.fp-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.fp-card[hidden]{display:none}
.fp-txt{flex:1;min-width:0}.fp-txt a{color:var(--ink)}.fp-txt b{display:block;font-size:.88rem;line-height:1.3}.fp-txt small{color:var(--ink-3);font-size:.74rem}
.fp-act{display:flex;gap:6px;flex:none}
.fp-act .btn-sm,.ao-b .btn-sm{padding:6px 12px;font-size:.78rem}
.fp-none{text-align:center;padding:20px}

.ao-wrap{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:16px;align-items:start}
.ao-cats{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:var(--shadow)}
.ao-cat{display:flex;align-items:center;gap:8px;text-align:left;border:0;background:none;padding:9px 12px;border-radius:10px;font-weight:700;font-size:.86rem;color:var(--ink-2);transition:background .2s,color .2s,transform .2s}
.ao-cat em{margin-left:auto;font-style:normal;font-size:.7rem;background:var(--bg);color:var(--ink-3);padding:2px 7px;border-radius:999px}
.ao-cat:hover{background:#fff7ed;color:#c2410c;transform:translateX(3px)}
.ao-cat.on{background:#fc8019;color:#fff}.ao-cat.on em{background:rgba(255,255,255,.25);color:#fff}
.ao-panel{display:grid;gap:12px}
.ao-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.ao-item{display:flex;align-items:center;gap:10px;padding:11px 12px;background:#fff;border:1px solid var(--line);border-radius:12px;animation:fadeUp .45s var(--ease) both;animation-delay:calc(var(--i,0) * 40ms);transition:box-shadow .2s,border-color .2s}
.ao-item:hover{box-shadow:var(--shadow);border-color:var(--c,var(--primary))}
.ao-t{flex:1;min-width:0}.ao-t b{display:block;font-size:.86rem;line-height:1.3}.ao-t small{color:var(--ink-3);font-size:.74rem}
.ao-b{display:flex;gap:6px;align-items:center;flex:none}
.ao-full{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:var(--ink-3);background:var(--bg);font-weight:800;transition:background .2s,color .2s}
.ao-full:hover{background:var(--indigo-tint);color:var(--primary)}
.ao-enq{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;border-radius:14px;background:linear-gradient(100deg,#eff6ff,#eef0ff);border:1px dashed #93c5fd}
.ao-enq>div{flex:1;min-width:180px}.ao-enq b{display:block}.ao-enq small{color:var(--ink-2);font-size:.8rem}
.ao-enq-ic{font-size:1.6rem}
.ao-link{font-size:.8rem;font-weight:700;color:var(--primary)}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

@media (max-width:900px){
  .apply-grid{grid-template-columns:minmax(0,1fr)}
  .apply-info{position:static;order:2}
  .apply-form{order:1}
  .ao-wrap{grid-template-columns:minmax(0,1fr)}
  .ao-cats{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:6px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .ao-cats::-webkit-scrollbar{display:none}
  .ao-cat{flex:none;white-space:nowrap;scroll-snap-align:start}
  .ao-cat:hover{transform:none}
}
@media (max-width:640px){
  .apply-page{padding-top:12px}
  .svc-sheet.inline{border-radius:14px}
  .fp-grid,.ao-list{grid-template-columns:minmax(0,1fr)}
  .fp-tools{flex-direction:column;align-items:stretch}
  .fp-search{max-width:none}
  .fp-chips{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;margin-inline:-16px;padding:0 16px 4px}
  .fp-chips::-webkit-scrollbar{display:none}
  .fp-chip{flex:none;white-space:nowrap}
  .fp-card,.ao-item{flex-wrap:wrap}
  .fp-act,.ao-b{width:100%;padding-left:46px}
  .fp-act .btn,.ao-b .btn{flex:1;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.fp-card,.ao-item{animation:none}}
/* inline (full-page) form never scrolls inside itself; Apply/Enquire row sits under the service name */
.svc-inline .svc-sheet.inline{max-height:none!important;overflow:visible;border-radius:16px!important;padding:0!important;animation:none}
.svc-inline .svc-sheet.inline .svc-head{border-radius:16px 16px 0 0}
.ao-item{flex-wrap:wrap}
.ao-b{width:100%;padding-left:46px}
.ao-b .btn{flex:1;justify-content:center}

/* ===== Phones & tablets: navigation bar locked to the top – only the page scrolls ===== */
@media (max-width:900px){
  .topbar{position:fixed!important;top:0;left:0;right:0;z-index:90;padding-top:env(safe-area-inset-top,0px);background:rgba(255,255,255,.97);-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}
  body{padding-top:var(--hdr,118px)}
  html{scroll-padding-top:calc(var(--hdr,118px) + 10px)}
  .mainnav{max-height:calc(100dvh - var(--hdr,118px) - 80px);max-height:calc(100vh - var(--hdr,118px) - 80px);overflow-y:auto;overscroll-behavior:contain}
  .fp-cat{scroll-margin-top:calc(var(--hdr,118px) + 10px)}
  .modal{z-index:120}
  .toast{z-index:130}
}

/* =====================================================================
   SIMPLE & SMART FORMS (Apply / General Enquiry / Callback / Contact)
   ===================================================================== */
.sf-head{background:linear-gradient(120deg,#ff8a1f,#fc6a03)!important;padding:14px 18px!important;gap:12px!important}
.sf-hic{width:40px;height:40px;flex:none;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.22);font-size:1.25rem}
.sf-ht{flex:1;min-width:0}
.sf-head h2{font-size:1.08rem!important;color:#fff!important;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-head small{display:block;color:rgba(255,255,255,.9);font-size:.76rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-head .svc-full{background:rgba(255,255,255,.22);color:#fff}
.sf-head .svc-full:hover{background:rgba(255,255,255,.35)}
.sf-head .svc-x{background:rgba(0,0,0,.18)}
.sf-body{padding:14px 18px 18px!important}
.sf-seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#f1f3f9;border-radius:12px;margin-bottom:14px}
.sf-seg .svc-tab{border:0;background:none;padding:9px 6px;border-radius:9px;font:700 .85rem var(--font);color:var(--ink-3);transition:background .25s,color .25s,box-shadow .25s;box-shadow:none;margin:0}
.sf-seg .svc-tab.on{background:#fff;color:#c2410c;box-shadow:0 2px 8px rgba(15,23,42,.1)}

.sf{display:grid;gap:12px}
.sf[hidden]{display:none}
.sf-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.sf-row[hidden]{display:none}
.sf-f{display:grid;gap:5px;min-width:0;margin:0}
.sf-l{font-size:.78rem;font-weight:700;color:var(--ink-2);letter-spacing:0;text-transform:none}
.sf-l i{color:#e11d48;font-style:normal}
.sf input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.hp),.sf select,.sf textarea{width:100%;min-width:0;border:1.5px solid #e3e6ef;background:#f8f9fc;border-radius:10px;padding:10px 12px;font:500 .9rem/1.35 var(--font);color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s;appearance:none;-webkit-appearance:none;margin:0}
.sf select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}
.sf textarea{resize:vertical;min-height:76px}
.sf input:focus,.sf select:focus,.sf textarea:focus{outline:0;border-color:#fc8019;background:#fff;box-shadow:0 0 0 4px rgba(252,128,25,.14)}
.sf input::placeholder,.sf textarea::placeholder{color:#a3aab8}
.sf input.ok,.sf textarea.ok{border-color:#86efac;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}
.sf textarea.ok{background-position:right 10px top 12px}
.sf .bad,.sf input.bad{border-color:#f87171!important;background:#fff5f5!important;animation:shake .35s}
@keyframes shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.sf .field-err{color:#dc2626;font-size:.74rem;font-weight:600}
.sf-pre{display:flex;align-items:stretch;min-width:0}
.sf-pre b{display:grid;place-items:center;padding:0 10px;font-size:.85rem;color:var(--ink-2);background:#eef0f6;border:1.5px solid #e3e6ef;border-right:0;border-radius:10px 0 0 10px}
.sf-pre input{border-radius:0 10px 10px 0!important;flex:1}

/* chosen service chip */
.sf-pick{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#fff7ed;border:1.5px solid #fed7aa}
.sf-pick[hidden]{display:none}
.sf-pick-ic{width:38px;height:38px;flex:none;border-radius:10px;display:grid;place-items:center;color:var(--c,#fc8019);background:#fff;box-shadow:0 2px 6px rgba(252,128,25,.15)}
.sf-pick-ic svg{width:20px;height:20px}
.sf-pick-t{flex:1;min-width:0}.sf-pick-t b{display:block;font-size:.92rem;line-height:1.3}.sf-pick-t small{color:#9a3412;font-size:.75rem}
.sf-link{border:0;background:none;color:#c2410c;font:700 .8rem var(--font);text-decoration:underline;text-underline-offset:3px;padding:4px}

/* documents + optional details (folded) */
.sf-docs,.sf-more{border-radius:12px;border:1.5px dashed #dbe1ee;background:#fbfcfe}
.sf-docs summary,.sf-more summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;font-size:.84rem;font-weight:700;color:var(--ink-2)}
.sf-docs summary::-webkit-details-marker,.sf-more summary::-webkit-details-marker{display:none}
.sf-docs summary b{color:var(--ink)}
.sf-docs summary em{font-style:normal;font-size:.75rem;color:var(--primary);background:var(--indigo-tint);padding:3px 9px;border-radius:999px}
.sf-docs[open] summary em::after{content:" ▲"}.sf-docs:not([open]) summary em::after{content:" ▼"}
.sf-docs ul{list-style:none;margin:0;padding:0 12px 10px;display:flex;flex-wrap:wrap;gap:6px}
.sf-docs li{font-size:.76rem;font-weight:600;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 10px;color:var(--ink-2)}
.sf-docs li::before{content:"✓ ";color:var(--green);font-weight:800}
.sf-more summary{justify-content:flex-start;color:#c2410c}
.sf-more summary small{font-weight:500;color:var(--ink-3);font-size:.74rem}
.sf-more[open] summary{border-bottom:1px dashed #dbe1ee}
.sf-more-in{display:grid;gap:12px;padding:12px;animation:fadeUp .3s var(--ease)}
.sf-up{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:10px 12px;border-radius:10px;border:1.5px dashed #c7d2fe;background:#f5f7ff;margin:0}
.sf-up .up-btn{margin:0}.sf-up .up-status{font-size:.75rem;color:var(--ink-3)}.sf-up .up-list{width:100%;margin:0}
.sf-up .up-list:empty{display:none}

/* topic / time chips */
.sf-chips{display:flex;flex-wrap:wrap;gap:6px}
.sf-chips button{border:1.5px solid #e3e6ef;background:#fff;border-radius:999px;padding:6px 12px;font:600 .8rem var(--font);color:var(--ink-2);transition:all .2s}
.sf-chips button:hover{border-color:#fdba74}
.sf-chips button.on{border-color:#fc8019;background:#fff7ed;color:#c2410c}

.sf-consent{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;color:var(--ink-2);line-height:1.45;cursor:pointer;margin:0}
.sf-consent input{width:18px;height:18px;flex:none;margin:1px 0 0;accent-color:#fc8019}
.sf-consent:has(input.bad){color:#dc2626}
.sf-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.sf-actions:has(>:only-child){grid-template-columns:1fr}
.sf-btn{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 14px;border:0;border-radius:12px;font:800 .92rem var(--font);text-align:center;cursor:pointer;transition:transform .2s var(--spring),box-shadow .2s,filter .2s;text-decoration:none}
.sf-btn:hover{transform:translateY(-2px);filter:brightness(1.04)}
.sf-btn:active{transform:scale(.97)}
.sf-btn:disabled{opacity:.7;transform:none}
.sf-btn.primary{background:linear-gradient(120deg,#ff8a1f,#f15a03);color:#fff;box-shadow:0 8px 20px rgba(241,90,3,.28)}
.sf-btn.pay{background:#fff;color:#14213d;border:1.5px solid #fbbf24;box-shadow:0 4px 12px rgba(251,191,36,.18)}
.sf-btn.wa{background:#22c55e;color:#fff;box-shadow:0 8px 20px rgba(34,197,94,.25)}
.sf-trust{margin:-2px 0 0;text-align:center;font-size:.74rem;color:var(--ink-3)}
.sf .form-msg:empty{display:none}

/* landing-page contact form card */
.contact-form.sf{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}
.sf-cf-head{display:flex;gap:12px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}
.sf-cf-head>span{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:1.3rem;background:#fff7ed}
.sf-cf-head b{display:block;font-size:1rem}.sf-cf-head small{color:var(--ink-3);font-size:.8rem}

@media (max-width:640px){
  .sf-body{padding:12px 14px calc(16px + env(safe-area-inset-bottom,0px))!important}
  .sf-head{padding:12px 14px!important}
  .sf input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.hp),.sf select,.sf textarea{padding:11px 12px}
}
@media (max-width:420px){
  .sf-row{grid-template-columns:minmax(0,1fr)}
  .sf-actions{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){.sf .bad{animation:none}.sf-more-in{animation:none}}
.sf input.ok,.sf textarea.ok{border-color:#86efac!important;background-color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important;padding-right:32px!important}
.sf textarea.ok{background-position:right 10px top 10px!important}
.sf-more summary{flex-wrap:wrap;row-gap:2px}
@media (max-width:640px){.sf-more summary small{flex-basis:100%;padding-left:14px}.sf-pick-t small{display:block;line-height:1.4}}

/* ---- upload + payment steps ---- */
.sf-step{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin-top:2px}
.sf-step b{font-size:.88rem}
.sf-step small{font-size:.74rem;color:var(--ink-3)}
.sf-num{align-self:center;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fc8019;color:#fff;font-size:.72rem;font-weight:800}
.sf-drop{display:flex;align-items:center;gap:12px;padding:14px;border:2px dashed #c7d2fe;border-radius:14px;background:#f5f7ff;cursor:pointer;margin:0;transition:border-color .2s,background .2s,transform .2s}
.sf-drop:hover,.sf-drop.over{border-color:var(--primary);background:#eef0ff}
.sf-drop.over{transform:scale(1.01)}
.sf-drop.has{border-style:solid;border-color:#86efac;background:#f0fdf4}
.sf-drop-ic{width:44px;height:44px;flex:none;border-radius:12px;display:grid;place-items:center;background:#fff;font-size:1.3rem;box-shadow:0 2px 8px rgba(79,70,229,.12)}
.sf-drop-t{min-width:0;font-size:.86rem;line-height:1.35}
.sf-drop-t b{color:var(--primary)}
.sf-drop-or{color:var(--ink-3)}
.sf-drop-t small{display:block;font-size:.74rem;color:var(--ink-3);margin-top:2px}
.sf-drop.has small{color:#15803d;font-weight:700}
.sf-files{list-style:none;margin:-4px 0 0;padding:0;display:grid;gap:6px}
.sf-files:empty{display:none}
.sf-files li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;background:#fff;border:1px solid var(--line);border-radius:10px;font-size:.8rem;animation:fadeUp .25s var(--ease)}
.sf-files li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-files li small{color:var(--ink-3)}
.sf-files li button{border:0;background:#fee2e2;color:#b91c1c;width:24px;height:24px;border-radius:50%;flex:none;font-size:.7rem}
.sf-pay{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.sf-pay-opt{position:relative;display:flex;gap:10px;align-items:flex-start;padding:12px;border:1.5px solid #e3e6ef;border-radius:12px;background:#fff;cursor:pointer;margin:0;transition:border-color .2s,background .2s,box-shadow .2s}
.sf-pay-opt input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:#fc8019}
.sf-pay-opt b{display:block;font-size:.88rem}
.sf-pay-opt small{display:block;font-size:.74rem;color:var(--ink-3);line-height:1.35;margin-top:2px}
.sf-pay-opt.on{border-color:#fc8019;background:#fff7ed;box-shadow:0 0 0 3px rgba(252,128,25,.12)}
.sf-pay-opt.on small{color:#9a3412}
.sf-go{width:100%;min-height:50px;font-size:1rem}
.sf-go:not(.is-pay){background:linear-gradient(120deg,#4f46e5,#7c3aed);box-shadow:0 8px 20px rgba(79,70,229,.28)}
@media (max-width:420px){.sf-drop-or{display:none}.sf-pay{grid-template-columns:minmax(0,1fr)}}

/* ===== Careers (careers.php, job.php) ===== */
.job-hero{background:radial-gradient(circle at 85% 20%,rgba(252,128,25,.16),transparent 45%),linear-gradient(180deg,#eef0ff,#f6f7fd)}
.job-hero .kicker{display:inline-block;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#c2410c;background:#fff1e6;padding:5px 12px;border-radius:999px;margin-bottom:10px}
.job-search{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:8px;margin:18px auto 0;max-width:820px;background:#fff;padding:8px;border-radius:16px;box-shadow:var(--shadow-lg)}
.job-search .js-k{display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:10px;background:var(--bg);color:var(--ink-3)}
.job-search input,.job-search select{border:0;background:var(--bg);border-radius:10px;padding:12px;font:500 .92rem var(--font);color:var(--ink);min-width:0;width:100%}
.job-search .js-k input{padding-left:0;outline:0}
.job-search select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}
.job-stats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.job-stats span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.84rem;color:var(--ink-2)}
.job-stats b{color:var(--primary)}
.job-h{font-size:1.25rem;margin:4px 0 14px;display:flex;align-items:center;gap:10px}
.job-h small{font-size:.75rem;font-weight:700;color:var(--ink-3);background:var(--bg);padding:3px 10px;border-radius:999px}
.job-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:30px}
.job-cat{display:grid;justify-items:start;gap:6px;text-align:left;padding:16px;border:1px solid var(--line);background:#fff;border-radius:14px;transition:transform .25s var(--spring),box-shadow .2s,border-color .2s;animation:fadeUp .45s var(--ease) both;animation-delay:calc(var(--i,0)*50ms)}
.job-cat:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#fdba74}
.job-cat.on{border-color:#fc8019;background:#fff7ed;box-shadow:0 0 0 3px rgba(252,128,25,.15)}
.job-cat b{font-size:.92rem;line-height:1.3}.job-cat small{color:#c2410c;font-weight:700;font-size:.78rem}
.jc-ic{width:46px;height:46px;flex:none;border-radius:12px;display:grid;place-items:center;color:var(--primary);background:var(--indigo-tint)}
.jc-ic.big{width:64px;height:64px;border-radius:16px}
.job-list{display:grid;gap:12px}
.job-card{display:flex;gap:14px;align-items:flex-start;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px;transition:box-shadow .2s,border-color .2s,transform .25s var(--spring)}
.job-card:hover{box-shadow:var(--shadow);border-color:#c7d2fe;transform:translateY(-2px)}
.job-card[hidden]{display:none}
.jc-main{flex:1;min-width:0}
.jc-main h3{font-size:1.05rem;line-height:1.3}.jc-main h3 a{color:var(--ink)}.jc-main h3 a:hover{color:var(--primary)}
.jc-main p{color:var(--ink-2);font-size:.86rem;margin-top:6px}
.jc-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px;font-size:.82rem;color:var(--ink-3)}
.jc-meta span{display:inline-flex;align-items:center;gap:5px}.jc-meta svg{color:#fc8019}
.jc-side{display:grid;gap:6px;justify-items:stretch;min-width:140px}
.jc-vac{font-size:.75rem;font-weight:800;color:#15803d;background:#dcfce7;padding:4px 10px;border-radius:999px;text-align:center}
.job-none{text-align:center;padding:20px}
.job-general{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px;background:linear-gradient(110deg,#fff7ed,#eef0ff)}
.job-general h2{font-size:1.15rem}
.job-page{padding-top:22px}
.job-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.job-head{display:flex;gap:16px;align-items:center;margin-bottom:18px}
.job-head h1{font-size:clamp(1.3rem,2.6vw,1.8rem);line-height:1.25}
.job-body{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:20px}
.job-body h2{font-size:1.05rem;margin:16px 0 6px}.job-body h2:first-child{margin-top:0}
.job-body p{color:var(--ink-2)}
.job-ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:6px}
.job-ul li{position:relative;padding-left:22px;color:var(--ink-2)}
.job-ul li::before{content:"›";position:absolute;left:4px;top:-1px;color:#fc8019;font-weight:800;font-size:1.1rem}
.job-apply{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow);scroll-margin-top:100px}
.job-side{display:grid;gap:14px;position:sticky;top:90px}
.job-sum h2{font-size:1rem;margin-bottom:10px}
.job-sum dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:.86rem;margin:0 0 12px}
.job-sum dt{color:var(--ink-3)}.job-sum dd{margin:0;font-weight:700}
.job-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:10px 12px;font-size:.8rem;color:#9a3412;margin-bottom:12px}
.job-note b{display:block;margin-bottom:2px}
.job-others{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:.88rem}
.job-others a{color:var(--primary);font-weight:600}
@media (max-width:900px){.job-grid{grid-template-columns:minmax(0,1fr)}.job-side{position:static}}
@media (max-width:640px){
  .job-search{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.job-search .js-k{grid-column:1/-1}
  .job-card{flex-wrap:wrap}.jc-side{width:100%;grid-template-columns:auto 1fr 1fr;align-items:center}
  .job-head{align-items:flex-start}
}

/* ===== Login / Register: Client Access Portal + Team Login ===== */
.pt-sheet{max-width:480px}
.pt-pane{display:grid;gap:10px}
.pt-pane[hidden]{display:none}
.pt-card{display:flex;align-items:center;gap:12px;padding:14px;border:1.5px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);transition:transform .25s var(--spring),border-color .2s,box-shadow .2s}
a.pt-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pt-card.client:hover{border-color:#fc8019}.pt-card.team:hover{border-color:var(--primary)}
.pt-ic{width:46px;height:46px;flex:none;border-radius:12px;display:grid;place-items:center;font-size:1.4rem;background:#fff7ed}
.pt-card.team .pt-ic{background:var(--indigo-tint)}
.pt-t{flex:1;min-width:0}.pt-t b{display:block;font-size:.98rem}.pt-t small{display:block;color:var(--ink-3);font-size:.8rem;line-height:1.4;margin-top:2px}
.pt-t small a{color:var(--primary);font-weight:700}
.pt-go{font-size:1.6rem;color:var(--ink-3);line-height:1}
.pt-card.muted-card{background:var(--bg);border-style:dashed}
.pt-link{text-align:center;font-size:.84rem;color:var(--ink-2);padding:4px}.pt-link b{color:var(--primary)}
.portal-page .pt-inline{display:flex;justify-content:center}
.portal-page .pt-sheet{width:100%;box-shadow:var(--shadow-lg);border-radius:18px;overflow:hidden;padding:0}

/* ---------- Fino chatbot (bottom right) ---------- */
.fino-fab{position:fixed;right:18px;bottom:18px;z-index:75;display:flex;align-items:center;gap:8px;border:0;cursor:pointer;padding:6px 16px 6px 6px;border-radius:30px;
  background:linear-gradient(90deg,#f97316,#ea580c);color:#fff;font-weight:700;font-size:14px;line-height:1;font-family:inherit;box-shadow:0 10px 26px rgba(234,88,12,.4);transition:transform .2s}
.fino-fab:hover{transform:translateY(-2px)}
.fino-fab:focus-visible{outline:3px solid #1d4ed8;outline-offset:3px}
.fino-fab img{width:34px;height:34px;border-radius:50%;background:#fff;object-fit:cover}
.fino-fab .fino-dot{position:absolute;top:4px;left:32px;width:10px;height:10px;border-radius:50%;background:#22c55e;border:2px solid #fff}
.fino-panel{position:fixed;right:18px;bottom:82px;z-index:1300;width:min(420px,calc(100vw - 24px));height:min(640px,calc(100vh - 110px));border-radius:18px;overflow:hidden;
  background:#fff;box-shadow:0 24px 60px rgba(15,23,42,.35);animation:sheetIn .3s ease}
.fino-panel[hidden]{display:none}
.fino-panel iframe{width:100%;height:100%;border:0;display:block}
@media(max-width:960px){
  .fino-fab{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:14px;padding:5px}
  .fino-fab .fino-l{display:none}
  .fino-panel{inset:0;width:100%;height:100%;border-radius:0}
  body.fino-open{overflow:hidden}
}

/* ---------- Legal / Advertisement "service details" in the Apply form ---------- */
#applyExtra:empty{display:none}
#applyExtra .extra-box{margin:2px 0 4px}
#applyExtra .frow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#applyExtra label{display:flex;flex-direction:column;gap:5px;font-size:.78rem;font-weight:700;color:var(--ink-2);min-width:0}
#applyExtra label.full{grid-column:1/-1}
#applyExtra .req{color:#e11d48;font-style:normal}
@media (max-width:520px){#applyExtra .frow{grid-template-columns:1fr}}

/* ---------- hero carousel (below the navigation bar) ---------- */
.hero-car{position:relative}
.hc-view{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg);background:#fff;aspect-ratio:1600/626;touch-action:pan-y}
.hc-track{display:flex;height:100%;transition:transform .7s var(--ease);will-change:transform}
.hc-slide{flex:0 0 100%;height:100%;position:relative;border-radius:0;box-shadow:none}
.hc-slide img{width:100%;height:100%;object-fit:cover;display:block}
.hc-slide.on img.kb{animation:kb 9s var(--ease) both}
.hc-slide .hot{animation:none}
.hc-slide.on .hot{animation:spotIn .6s var(--spring) both}
.hc-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--ink);box-shadow:0 6px 18px rgba(15,23,42,.18);cursor:pointer;opacity:.0;transition:opacity .3s,transform .3s var(--spring)}
.hero-car:hover .hc-arrow,.hc-arrow:focus-visible{opacity:1}
.hc-arrow:hover{transform:translateY(-50%) scale(1.08)}
.hc-arrow.l{left:12px}.hc-arrow.r{right:12px}
.hc-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px}
.hc-dot{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 13px;font:700 .8rem var(--font);color:var(--ink-2);cursor:pointer;position:relative;overflow:hidden;transition:all .3s var(--spring)}
.hc-dot:hover{border-color:var(--ac);color:var(--ac)}
.hc-dot.on{background:var(--ac);border-color:var(--ac);color:#fff;box-shadow:0 6px 14px color-mix(in srgb,var(--ac) 35%,transparent)}
.hc-dot.on::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:rgba(255,255,255,.75);transform-origin:left;animation:hcBar var(--hc-ms,6500ms) linear both}
.hero-car.paused .hc-dot.on::after{animation-play-state:paused}
@keyframes hcBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hc-chips{display:none}
@media (max-width:760px){
  .hc-arrow{opacity:1;width:34px;height:34px}
  .hc-arrow.l{left:6px}.hc-arrow.r{right:6px}
  .hc-dot{padding:5px 10px;font-size:.72rem}
  .hc-chips.on{display:grid}
}
@media (prefers-reduced-motion:reduce){.hc-track{transition:none}.hc-dot.on::after{animation:none}}

/* service tabs: Registration … Finance & Loans, Legal, Advertisement, Tax Compliance, Arrest & Cease, Appeals, Industry Loans in the first row */
.tab-break{display:none}
@media (min-width:1280px){
  .services .tabs{width:min(1440px,calc(100vw - 40px));position:relative;left:50%;transform:translateX(-50%);gap:6px}
  .services .tab{padding:7px 11px;font-size:.8rem;gap:5px}
  .services .tab svg{width:15px;height:15px}
}
@media (min-width:1420px){.tab-break{display:block;flex-basis:100%;height:0}}
