/* Shared seller and funding-partner process. */
.three-steps{padding:95px max(8%,calc((100% - 1160px)/2));background:radial-gradient(ellipse at 50% 35%,#112b402e,transparent 70%);border-block:1px solid #9bbeda16;scroll-margin-top:110px}
.steps-heading{max-width:740px;margin-bottom:38px}.steps-heading .eyebrow{margin-bottom:18px}.steps-heading h2{font-size:clamp(34px,3.6vw,52px);line-height:1.1}.steps-heading>p:last-child{margin:20px 0 0}
.steps-cards{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 0 30px;padding:0}
.steps-cards li{min-width:0;padding:30px 26px 32px;border:1px solid #96d6f22b;border-radius:18px;background:linear-gradient(145deg,#122b3e,#091725);box-shadow:0 16px 45px #00000012}
.step-number{display:block;color:var(--accent);font-family:'Space Grotesk',sans-serif;font-size:38px;letter-spacing:-.05em;line-height:1;margin-bottom:38px}
.steps-cards h3{font-size:25px;letter-spacing:-.025em;line-height:1.2;margin:0 0 16px}.steps-cards p{font-size:15px;line-height:1.75;margin:0;color:#b8c8d8}
@media(max-width:1000px){.three-steps{padding:70px 7%}.steps-cards{gap:14px}.steps-cards li{padding:26px 20px}.steps-cards h3{font-size:23px}}
@media(max-width:650px){.three-steps{padding:60px 8%}.steps-cards{grid-template-columns:1fr;gap:15px}.steps-cards li{padding:25px}.step-number{font-size:32px;margin-bottom:24px}.steps-heading{margin-bottom:28px}.three-steps>.button{max-width:100%;text-align:center}}
@media(min-width:1101px){.three-steps{padding-left:max(16%,calc((100% - 1100px)/2));padding-right:8%}}

/* Reveal once as each card enters view; no scroll-loop or layout animation. */
.steps-cards li.step-reveal{opacity:0;transform:translateY(18px);transition:opacity 560ms ease var(--step-delay,0ms),transform 560ms cubic-bezier(.22,1,.36,1) var(--step-delay,0ms)}
.steps-cards li.step-visible{opacity:1;transform:none}
@media(max-width:650px){.steps-cards li.step-reveal{transform:translateY(12px)}.steps-cards li.step-visible{transform:none}}
@media(prefers-reduced-motion:reduce){.steps-cards li.step-reveal{opacity:1;transform:none;transition:none}}

.step-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:38px}.step-card-top .step-number{margin:0}.step-icon{display:block;flex:none;width:44px;height:44px;filter:drop-shadow(0 0 6px #9bddf538) drop-shadow(0 0 14px #9bddf51a);fill:none;stroke:var(--accent);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.step-icon circle{fill:#102639}@media(max-width:650px){.step-card-top{margin-bottom:24px}.step-icon{width:38px;height:38px}}

/* Pointer-only hover uses translate independently of the scroll reveal transform. */
@media(hover:hover) and (pointer:fine){
 .steps-cards li{transition:translate 240ms ease}
 .steps-cards li.step-reveal{transition:opacity 560ms ease var(--step-delay,0ms),transform 560ms cubic-bezier(.22,1,.36,1) var(--step-delay,0ms),translate 240ms ease}
 .steps-cards li:hover{translate:0 -4px}
 .steps-cards .step-icon{transition:filter 240ms ease}
 .steps-cards li:hover .step-icon{filter:drop-shadow(0 0 7px #9bddf55c) drop-shadow(0 0 17px #9bddf52b)}
}
@media(prefers-reduced-motion:reduce){.steps-cards li:hover{translate:none}.steps-cards li.step-reveal,.steps-cards .step-icon{transition:none}}

/* Touch uses the same brighter glow without adding lift or blocking scroll. */
.steps-cards .step-icon{transition:filter 240ms ease}
.steps-cards li.step-touch .step-icon{filter:drop-shadow(0 0 7px #9bddf55c) drop-shadow(0 0 17px #9bddf52b);transition-duration:100ms}
@media(prefers-reduced-motion:reduce){.steps-cards .step-icon,.steps-cards li.step-touch .step-icon{transition:none}}

/* A quiet connector sits behind the desktop cards, aligned with their icons. */
@media(min-width:1101px){
 .steps-cards{position:relative;isolation:isolate}
 .steps-cards::before{content:"";position:absolute;left:1px;right:1px;top:52px;height:1px;background:#9bddf547;z-index:-1;pointer-events:none}
}

/* Follow the existing one-time card reveal, drawing from step 1 toward step 3. */
@media(min-width:1101px) and (prefers-reduced-motion:no-preference){
 .steps-cards:has(>li.step-reveal)::before{transform:scaleX(0);transform-origin:left center;transition:transform 800ms cubic-bezier(.22,.61,.36,1) 100ms}
 .steps-cards:has(>li.step-visible)::before{transform:scaleX(1)}
}
