/* Desktop and tablet look (760px and wider). The phone layout is not touched by this file.
   Style reference: the earlier navy + green design (dark ink buttons, green accents, card layouts). */
:root{--g:#8be04e;--g2:#b8f27c;--k:#0a1631}
.dsk{display:block}.ticks.dsk{display:grid}.dsk-t{display:inline}.hide-d{display:none!important}
.kicker{display:none}

/* nav and top bar */
.top a{color:var(--g);font-weight:700;text-decoration:none}
.nav{transition:box-shadow .25s}.nav.scrolled{box-shadow:0 8px 24px rgba(10,22,49,.08)}
.logo{font-size:1.25rem}
.links a{position:relative;font-weight:600;color:var(--ink);text-decoration:none}
.links a:after{content:"";position:absolute;left:4px;right:4px;bottom:2px;height:2px;background:var(--g);transform:scaleX(0);transition:transform .2s}
.links a:hover:after{transform:scaleX(1)}

/* buttons */
.btn{background:var(--k);transition:transform .15s,box-shadow .2s,background .2s}
.btn:hover{background:#15285a;transform:translateY(-1px);box-shadow:0 8px 20px rgba(10,22,49,.2)}
.btn.lime,.card.form .btn{background:linear-gradient(135deg,var(--g),var(--g2));color:var(--k)}
.btn.lime:hover,.card.form .btn:hover{background:linear-gradient(135deg,#7fd23f,var(--g));box-shadow:0 8px 22px rgba(139,224,78,.4)}
.btn.ghost-l:hover{background:rgba(255,255,255,.08)}

/* hero */
.hero{position:relative;overflow:hidden;padding:84px 0 88px;
 background:radial-gradient(900px 420px at 85% -10%,rgba(139,224,78,.2),transparent 60%),radial-gradient(700px 420px at 0 110%,rgba(32,92,220,.35),transparent 60%),linear-gradient(160deg,#0a1631,#0e2a63)}
.hero:before{content:"";position:absolute;inset:-20%;background:radial-gradient(520px 320px at 70% 25%,rgba(139,224,78,.13),transparent 65%);animation:glow 14s ease-in-out infinite alternate;pointer-events:none}
@keyframes glow{to{transform:translate(-6%,8%) scale(1.15)}}
.hero .wrap{position:relative;z-index:1}
.hero h1{font-size:clamp(2.3rem,4vw,3.4rem);line-height:1.08}
.hero .lead{font-size:1.15rem;max-width:34em}
.hero .eyebrow{text-transform:none;letter-spacing:0;font-size:.92rem}
.hero .ticks li{color:#e4ecff}
.hero-t{gap:14px}
.hero-art{max-width:250px;margin-top:6px}
.hero-art .art{width:100%;height:auto;filter:drop-shadow(0 14px 28px rgba(0,0,0,.35));animation:float 6s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-8px)}}
.mini{padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);max-width:520px}
.mini p{margin:0 0 14px;font-size:.8rem;color:#b8c5e3}
.mini ol{list-style:none;margin:0;padding:0;display:flex;position:relative}
.mini ol:before,.mini ol:after{content:"";position:absolute;left:12.5%;top:6px;height:2px}
.mini ol:before{right:12.5%;background:rgba(255,255,255,.22)}
.mini ol:after{width:50%;background:var(--g);transform-origin:left;transform:scaleX(0);animation:trk 3s linear .6s forwards}
@keyframes trk{to{transform:scaleX(1)}}
.mini li{position:relative;flex:1;text-align:center;font-size:.78rem;color:#dbe5fb;padding-top:22px}
.mini li:before{content:"";position:absolute;left:50%;top:0;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#0e2a63;border:2px solid rgba(255,255,255,.35);z-index:1}
.mini li:nth-child(-n+3):before{animation:node .4s ease-out both}
.mini li:nth-child(1):before{animation-delay:.6s}.mini li:nth-child(2):before{animation-delay:2.1s}
.mini li:nth-child(3):before{animation-delay:3.6s}
.mini li:nth-child(3):after{content:"";position:absolute;left:50%;top:0;width:14px;height:14px;margin-left:-7px;border-radius:50%;animation:ping 2s ease-out 4.2s infinite}
.mini li:last-child:before{border-color:var(--g)}
@keyframes node{to{background:var(--g);border-color:var(--g);box-shadow:0 0 0 4px rgba(139,224,78,.22)}}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(139,224,78,.6)}100%{box-shadow:0 0 0 12px rgba(139,224,78,0)}}

/* lead form: green border on the selected service */
.card.form{border-radius:20px;padding:30px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.chip span{border-width:2px;transition:border-color .18s,background .18s,box-shadow .18s}
.chip:hover span{border-color:var(--g)}
.chip input:checked+span{background:var(--k);border-color:var(--g);color:#fff;box-shadow:0 0 0 3px rgba(139,224,78,.35)}
.chip input:focus-visible+span{outline-color:var(--g)}
form input:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(139,224,78,.3)}
label.chk input{accent-color:var(--k)}

/* sections */
.sec{padding:80px 0}.sec.tight{padding-top:8px}
.sec.tint{background:#f3f5f9}
h2{font-size:2.05rem}
.assure .ic{color:#3f9d12}
.get-sec{position:relative;overflow:hidden;color:#fff;padding:88px 0;background:radial-gradient(700px 320px at 8% 0,rgba(139,224,78,.16),transparent 60%),radial-gradient(600px 300px at 100% 100%,rgba(32,92,220,.3),transparent 60%),linear-gradient(160deg,#0a1631,#0e2a63)}
.get-head{text-align:center;max-width:720px;margin:0 auto 44px;display:grid;gap:12px}
.get-tag{justify-self:center;margin:0;background:rgba(139,224,78,.14);color:var(--g);border:1px solid rgba(139,224,78,.4);border-radius:99px;padding:5px 16px;font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.get-head h2{font-size:2.7rem;color:#fff}.get-head p:last-child{color:#cfdaf2;font-size:1.12rem;margin:0}
.get{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.gc{position:relative;overflow:hidden;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-top:3px solid var(--g);border-radius:16px;padding:28px 22px 24px;display:grid;gap:10px;align-content:start;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}
.gc:after{content:attr(data-n);position:absolute;right:16px;top:6px;font-size:3.6rem;font-weight:800;color:rgba(255,255,255,.06);line-height:1}
.gc:hover{transform:translateY(-6px);background:rgba(255,255,255,.1);border-color:rgba(139,224,78,.6);box-shadow:0 20px 44px rgba(0,0,0,.3)}
.gi{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,var(--g),var(--g2));color:var(--k);display:grid;place-items:center}
.gi .ic{width:26px;height:26px}
.gc b{font-size:1.2rem;color:#fff}.gc p{margin:0;color:#cfdaf2;font-size:.97rem}
.gc em{font-style:normal;font-weight:700;font-size:.85rem;color:var(--g);display:flex;gap:6px;align-items:center;margin-top:4px}
.gc em:before{content:"\2713";font-weight:800}
.get-band{margin-top:36px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.get-band b{display:block;font-size:1.15rem}.get-band span{color:#cfdaf2}
.get-band .btn{flex:none}

/* service cards */
.svc{display:flex;flex-direction:column;gap:8px;border-top:3px solid var(--g);padding:22px;transition:transform .25s,box-shadow .25s}
.svc:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(10,22,49,.12)}
.svc.soon{border-top-color:#c8d2e2}
.svc>p:not(.pills){min-height:3.1em}
.svc-act{margin-top:auto;padding-top:6px}.svc.soon .svc-act{margin-top:6px}
.svc-art{height:128px;border-radius:10px;background:linear-gradient(135deg,#eaf1ff,#f1fbe6);display:grid;place-items:center;overflow:hidden;margin-bottom:4px}
.svc-art .art{height:100%;width:auto;max-width:100%;transition:transform .35s}
.svc:hover .svc-art .art{transform:scale(1.06)}
.svc-ic{background:var(--k);color:var(--g)}
.pills span{background:#eef3fb}

/* how it works: numbered cards */
.how{grid-template-columns:1fr;gap:28px;align-items:start}
.tl,.tl.wide{grid-template-columns:repeat(4,1fr);gap:16px}
.tl.wide{grid-template-columns:repeat(5,1fr)}
.tl li,.tl.wide li{padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px;gap:4px;align-content:start;transition:transform .25s,box-shadow .25s}
.tl li:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(10,22,49,.08)}
.tl li:before{position:static;width:34px;height:34px;margin-bottom:10px;background:var(--k);color:var(--g)}
.tl li:after,.tl.wide li:after{display:none}
.case{border-top:3px solid var(--g);max-width:640px;box-shadow:0 10px 30px rgba(10,22,49,.06)}
.case li.now i{animation:ping 2s ease-out infinite}

/* comparison: light section with one dark card */
.sec.dark{background:#f8f9fc;color:var(--ink)}
.sec.dark .sec-h p{color:var(--mut)}
.cmp{grid-template-columns:1fr 1fr;gap:20px}
.cmp>div{border-radius:16px;padding:26px}
.cmp-off{order:-1;background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 10px 30px rgba(10,22,49,.06)}
.cmp-on{background:var(--k);color:#fff;box-shadow:0 18px 40px rgba(10,22,49,.25)}
.cmp ul{list-style:none;padding:0;gap:0;margin-top:12px}
.cmp li{position:relative;padding:11px 0 11px 28px;border-top:1px solid var(--line)}
.cmp-on li{border-top-color:rgba(255,255,255,.12)}
.cmp li:before{position:absolute;left:0;top:11px;font-weight:800}
.cmp-off li:before{content:"\2715";color:#d93025}.cmp-on li:before{content:"\2713";color:var(--g)}
.sec.dark .btn.lime{background:var(--k);color:#fff}
.sec.dark .btn.lime:hover{background:#15285a;box-shadow:0 8px 20px rgba(10,22,49,.2)}

/* documents */
.tabs button{border-width:2px;transition:border-color .18s,box-shadow .18s,background .18s}
.tabs button:hover{border-color:var(--g)}
.tabs button[aria-selected=true]{background:var(--k);border-color:var(--g);color:#fff;box-shadow:0 0 0 3px rgba(139,224,78,.3)}
.docs.two{grid-template-columns:1fr}
.docs li{border-left:3px solid var(--g);transition:transform .2s,box-shadow .2s}
.docs li:hover{transform:translateX(3px);box-shadow:0 6px 18px rgba(10,22,49,.07)}
.dk{background:#eaf9dc;color:#2f8a0c}

/* FAQ cards */
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 18px;margin-bottom:10px;transition:border-color .2s,box-shadow .2s}
details:hover,details[open]{border-color:var(--g);box-shadow:0 6px 20px rgba(10,22,49,.06)}
summary:after{color:var(--k)}
.also{border:1px solid var(--line);transition:border-color .2s}.also:hover{border-color:var(--g)}

/* closing band */
.cta-band{position:relative;overflow:hidden;padding:64px 0;background:radial-gradient(700px 300px at 80% 0,rgba(139,224,78,.16),transparent 60%),var(--navy)}

/* scroll reveal (added by fx.js) */
.rv{opacity:0;transform:translateY(20px)}
.rv.in{opacity:1;transform:none;transition:opacity .6s ease var(--d,0s),transform .6s ease var(--d,0s)}

@media (prefers-reduced-motion:reduce){.hero:before,.hero-art .art,.mini li:before,.mini li:after,.mini ol:after,.case li.now i{animation:none!important}.mini ol:after{transform:scaleX(1)}.mini li:nth-child(-n+3):before{background:var(--g);border-color:var(--g)}.rv{opacity:1;transform:none}}
@media (max-width:980px){.get,.tl,.tl.wide{grid-template-columns:repeat(2,1fr)}}
