/* ==========================================================================
   SendorX — how-it-works.css  (body class: .page-how-it-works)
   ========================================================================== */

/* ===== HERO ===== */
.page-how-it-works .hero {
    background: linear-gradient(180deg, var(--navy) 0%, var(--navy-2) 100%);
    color: #fff;
    padding: 90px 0 40px;
    position: relative;
    overflow: visible;
}
.page-how-it-works .hero::before {
    content: '';
    position: absolute;
    top: -20%; right: -10%;
    width: 600px; height: 600px;
    background: radial-gradient(circle, rgba(249,115,22,.18), transparent 70%);
    pointer-events: none;
}
.page-how-it-works .hero h1 { font-size: clamp(36px, 5vw, 56px); line-height: 1.08; font-weight: 800; letter-spacing: -1.5px; margin: 0 0 14px; max-width: 620px; }
.page-how-it-works .hero h1 .accent { color: var(--orange); }
.page-how-it-works .hero p.lead { font-size: 18px; color: rgba(255,255,255,.78); margin: 0; max-width: 540px; line-height: 1.6; }

/* ===== SECTIONS ===== */
.page-how-it-works .section { padding: 90px 0; }
.page-how-it-works .section--bg { background: var(--bg); }

/* ===== STEPS ===== */
.page-how-it-works .steps { display: flex; flex-direction: column; gap: 60px; max-width: 980px; margin: 0 auto; }
.page-how-it-works .step { display: grid; grid-template-columns: 200px 1fr; gap: 40px; align-items: center; }
.page-how-it-works .step-label { font-weight: 700; font-size: 18px; color: var(--ink); }
.page-how-it-works .step-label .num { display: inline-block; padding: 4px 14px; background: var(--orange); color: #fff; border-radius: 999px; font-size: 13px; margin-right: 10px; }
.page-how-it-works .step-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 14px;
    box-shadow: var(--shadow-sm);
}
.page-how-it-works .step-card img { border-radius: 10px; width: 100%; }
.page-how-it-works .steps-cta { text-align: center; margin-top: 50px; }

/* ===== RESPONSIVE ===== */
@media (max-width: 960px) {
    .page-how-it-works .hero { padding: 40px 0px 10px 0px; }
    .page-how-it-works .step { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 720px) {
    .page-how-it-works .section { padding: 60px 0; }
}
