/* Imagine homepage: four steps and merchant CTA only. */
.np-public #how-it-works{padding-top:48px;padding-bottom:48px;border:1px solid #edf2fc;background:linear-gradient(135deg,#f8faff,#f0f5ff)}
.np-public #how-it-works .im-heading{margin-bottom:32px}
.np-public .im-steps{position:relative;gap:20px;isolation:isolate}
.np-public .im-steps:before{content:"";position:absolute;left:10%;right:10%;top:51px;border-top:2px dashed #b9d1fb;z-index:-1}
.np-public .im-steps .im-step-card{position:relative;background:#fff;border:1px solid #e3ebfa;border-radius:18px;padding:24px 20px;box-shadow:0 8px 24px #22447706;transition:transform .22s,box-shadow .22s,border-color .22s}
.np-public .im-steps .im-step-card:before{position:absolute;right:18px;top:20px;font-size:13px;font-weight:700;color:#86a8dc;letter-spacing:.05em}
.np-public .im-step-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#edf4ff,#dbe9ff);color:#4285f4;box-shadow:inset 0 1px 0 white,0 5px 12px #4285f418;margin-bottom:20px}
.np-public .im-step-icon svg{width:27px;height:27px}
.np-public .im-step-card h3{font-size:18px;line-height:1.4;margin:0 0 10px}
.np-public .im-step-card p{font-size:14px;line-height:1.7;margin:0;color:#65758d}
@media(hover:hover){.np-public .im-step-card:hover{transform:translateY(-6px);border-color:#b9d1fb;box-shadow:0 16px 32px #4285f417}}
.np-public .im-cta-upgraded{max-width:1140px;margin:36px auto;padding:40px 48px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;text-align:left;border:1px solid #e3ebfa;border-radius:24px;background:radial-gradient(ellipse at 85% 50%,#e4efff,transparent 60%),#fff;overflow:hidden}
.np-public .im-cta-eyebrow{font-size:10px;letter-spacing:.16em;color:#4285f4;font-weight:700;display:block;margin-bottom:14px}
.np-public .im-cta-upgraded h2{font-size:36px;line-height:1.25;margin-bottom:14px}
.np-public .im-cta-upgraded p{margin:0 0 24px}
.np-public .im-cta-upgraded .button{margin:0;padding:12px 24px;font-size:14px}
.np-public .im-cta-upgraded .button span{margin-left:12px}
.np-public .im-cta-login{display:block;font-size:12px;color:#6480a4;text-decoration:none;margin-top:16px}
.np-public .im-cta-login:hover{color:#4285f4}
.np-public .im-mini-scene{position:relative;height:270px;perspective:800px;max-width:400px;width:100%;justify-self:center}
.np-public .im-mini-orbit{position:absolute;width:245px;height:245px;border:1px solid #cbdcf7;border-radius:50%;top:8px;left:65px;box-shadow:0 0 0 24px #e9f1ff80}
.np-public .im-mini-card{position:absolute;top:40px;left:22px;width:285px;padding:24px;border-radius:22px;background:linear-gradient(135deg,#6da8ff,#4285f4 60%,#2468d5);color:white;box-shadow:8px 14px 0 #c7dafa,0 25px 35px #346dc830,inset 0 1px 0 #ffffff80;transform:rotateY(-12deg) rotateZ(-7deg);animation:im-mini-float 6s ease-in-out infinite}
.np-public .im-mini-brand{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700}
.np-public .im-mini-chip{width:32px;height:25px;border-radius:6px;background:linear-gradient(135deg,#f5e6b3,#d9bc73);border:1px solid #f5df9f;margin:18px 0}
.np-public .im-mini-card strong{display:block;font-size:20px;font-weight:600;line-height:1.3}
.np-public .im-mini-card small{font-size:10px;opacity:.85;display:block;margin-top:8px}
.np-public .im-mini-badge{position:absolute;left:85px;bottom:14px;padding:12px 18px;background:white;border:1px solid #e1eaff;border-radius:13px;box-shadow:0 12px 28px #346dc81a;font-size:11px;font-weight:600;color:#41628d;white-space:nowrap}
.np-public .im-mini-badge span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eaf3ff;color:#4285f4;margin-right:8px}
.np-public .im-mini-coin{position:absolute;right:18px;top:32px;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#fff0bf,#e7bd64);border:3px solid #f8dd95;box-shadow:5px 5px 0 #d6ac55,0 12px 20px #bd98552a;color:#a47a26;font-size:30px;font-weight:700;transform:rotate(12deg);animation:im-mini-coin 5s ease-in-out infinite}
@keyframes im-mini-float{50%{transform:translateY(-7px) rotateY(-12deg) rotateZ(-5deg)}}
@keyframes im-mini-coin{50%{transform:translateY(-9px) rotate(5deg)}}
@media(max-width:800px){.np-public .im-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.np-public .im-steps:before{display:none}.np-public .im-cta-upgraded{margin:28px 16px;padding:32px 24px;grid-template-columns:1fr;text-align:center;gap:12px}.np-public .im-cta-upgraded h2{font-size:30px}.np-public .im-mini-scene{max-width:350px}}
@media(max-width:480px){.np-public #how-it-works{margin:0 12px;padding:32px 16px}.np-public .im-steps{grid-template-columns:1fr}.np-public .im-steps .im-step-card{padding:20px}.np-public .im-step-icon{margin-bottom:14px}.np-public .im-mini-scene{max-width:290px;height:255px}.np-public .im-mini-card{left:6px;width:245px;padding:20px}.np-public .im-mini-orbit{left:30px;width:210px;height:210px}.np-public .im-mini-badge{left:22px;bottom:12px}.np-public .im-mini-coin{right:5px;width:48px;height:48px;font-size:26px}}
@media(prefers-reduced-motion:reduce){.np-public .im-mini-card,.np-public .im-mini-coin{animation:none}.np-public .im-step-card{transition:none}}
