/* Become a Vendor / Become a Rider pages. Hero, phone mockup, steps and the
   purple download band are copied from index.html's inline styles so these
   pages match the homepage; the card grids below are new. Uses site.css
   tokens (--primary, --pink, --navy, --fill, --border, --grad, --r-card). */

/* ---------- HERO ---------- */
.hero{position:relative;padding:150px 0 100px;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#faf6ff 100%)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;position:relative;z-index:2}
.chip{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--border);padding:8px 18px;border-radius:999px;font-weight:500;font-size:13.5px;margin-bottom:26px;box-shadow:0 6px 20px rgba(108,63,197,.08)}
.dot{width:10px;height:10px;border-radius:50%;background:#1DB954;position:relative}
.dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:#1DB954;animation:pulse 1.8s infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(3);opacity:0}}
.hero h1{font-size:clamp(42px,6.4vw,76px);margin-bottom:24px}
.hero h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lead{font-size:18px;color:var(--muted);max-width:540px;margin-bottom:34px}
.ctas{display:flex;flex-wrap:wrap;gap:14px}
.btn-outline-p{border-color:var(--primary);color:var(--primary);background:#fff}
.btn-outline-p:hover{background:var(--fill)}
.blob{position:absolute;border-radius:50%;filter:blur(80px);z-index:1;opacity:.45}
.blob.b1{width:420px;height:420px;background:#6C3FC5;top:-80px;right:-100px}
.blob.b2{width:340px;height:340px;background:#E8006F;bottom:-120px;right:22%;opacity:.28}
.hero .load{opacity:0;transform:translateY(24px);animation:up .9s cubic-bezier(.2,.7,.2,1) forwards}
.hero .l1{animation-delay:.05s}.hero .l2{animation-delay:.2s}.hero .l3{animation-delay:.35s}.hero .l4{animation-delay:.5s}.hero .l6{animation-delay:.5s}
@keyframes up{to{opacity:1;transform:none}}

/* ---------- PHONE MOCKUP ---------- */
.visual{position:relative;display:grid;place-items:center;min-height:620px}
.phone{position:relative;width:290px;height:590px;background:var(--navy);border-radius:46px;padding:12px;box-shadow:0 40px 80px rgba(26,10,51,.35),0 0 0 2px #2c1a4d inset;animation:float 6s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-16px) rotate(1deg)}}
.phone::before{content:"";position:absolute;top:18px;left:50%;transform:translateX(-50%);width:90px;height:22px;background:var(--navy);border-radius:0 0 16px 16px;z-index:3}
.screen{width:100%;height:100%;background:#fff;border-radius:36px;overflow:hidden;padding:44px 16px 16px;display:flex;flex-direction:column;gap:12px}
.s-head{display:flex;justify-content:space-between;align-items:center}
.s-head b{font-family:var(--head);font-size:15px}
.s-head small{color:var(--muted);font-size:10px;display:block}
.s-av{width:30px;height:30px;border-radius:50%;background:var(--fill);display:grid;place-items:center;font-size:15px}
.s-tile{background:var(--grad);color:#fff;border-radius:18px;padding:14px}
.s-tile small{display:block;font-size:10px;opacity:.85}
.s-tile b{font-family:var(--head);font-size:24px}
.s-tile span{display:block;font-size:10px;opacity:.85;margin-top:2px}
.s-label{font-family:var(--head);font-weight:800;font-size:12px;color:var(--navy);margin-top:2px}
.items{display:grid;gap:8px}
.it{display:flex;align-items:center;gap:10px;border:1.5px solid var(--border);border-radius:14px;padding:8px 10px;font-size:11px}
.it .e{width:34px;height:34px;border-radius:10px;background:var(--fill);display:grid;place-items:center;font-size:18px}
.it b{font-family:var(--head);font-size:11.5px;display:block}
.it span{color:var(--muted);font-size:9.5px}
.it em{margin-left:auto;font-style:normal;font-weight:500;color:var(--primary);white-space:nowrap}
.it.new{border-color:var(--pink);box-shadow:0 0 0 3px rgba(232,0,111,.1)}
.it .go{margin-left:auto;background:var(--primary);color:#fff;border-radius:999px;padding:4px 10px;font-size:9.5px;font-weight:500}
.fb{position:absolute;background:#fff;border-radius:20px;padding:12px 16px;box-shadow:0 18px 40px rgba(26,10,51,.16);font-size:12.5px;display:flex;align-items:center;gap:10px;z-index:4;border:1px solid var(--border)}
.fb b{display:block;font-family:var(--head);font-size:13px}
.fb span{color:var(--muted);font-size:11.5px}
.fb1{top:40px;left:-60px;animation:fa 5s ease-in-out infinite}
.fb2{top:300px;right:-70px;animation:fb 6.5s ease-in-out infinite}
.fb3{bottom:50px;left:-24px;animation:fa 7s ease-in-out infinite .8s}
@keyframes fa{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes fb{0%,100%{transform:translate(0,0)}50%{transform:translate(-8px,10px)}}

/* ---------- BENEFIT CARDS ---------- */
.center{text-align:center}
.center .sub{margin:0 auto}
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:56px}
.bcard{position:relative;background:#fff;border:1.5px solid var(--border);border-radius:var(--r-card);padding:32px 26px;overflow:hidden;transition:transform .35s,box-shadow .35s}
.bcard::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.bcard:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(108,63,197,.16)}
.bcard:hover::before{transform:scaleX(1)}
.bcard .ic{width:62px;height:62px;border-radius:20px;background:var(--fill);display:grid;place-items:center;font-size:30px;margin-bottom:20px}
.bcard h3{font-size:19px;margin-bottom:10px}
.bcard p{color:var(--muted);font-size:14.5px}

/* ---------- WHO CAN JOIN ---------- */
.tint{background:var(--fill)}
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
.cat{background:#fff;border-radius:var(--r-card);border:1.5px solid var(--border);padding:28px 20px;text-align:center}
.cat .em{font-size:44px;margin-bottom:12px}
.cat b{font-family:var(--head);font-size:16px;display:block}
.closing{margin:36px auto 0;max-width:560px;color:#3b2d55;font-size:16.5px;text-align:center}

/* ---------- EARNINGS ---------- */
.earn{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px}
.ecard{border-radius:var(--r-card);padding:34px 28px;background:#fff;border:1.5px solid var(--border);text-align:center}
.ecard.hi{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 24px 50px rgba(108,63,197,.3)}
.ecard .k{font-family:var(--head);font-weight:700;font-size:15px;color:var(--primary);margin-bottom:10px}
.ecard.hi .k{color:rgba(255,255,255,.85)}
.ecard b{display:block;font-family:var(--head);font-weight:800;font-size:clamp(24px,2.6vw,30px);line-height:1.2}
.ecard span{display:block;margin-top:6px;font-size:14px;color:var(--muted)}
.ecard.hi span{color:rgba(255,255,255,.8)}
.disclaimer{margin-top:22px;font-size:13px;color:var(--muted);text-align:center}

/* ---------- HOW IT WORKS ---------- */
.how{background:linear-gradient(160deg,#faf6ff,#ffeaf4)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:64px;position:relative}
.steps::before{content:"";position:absolute;top:44px;left:16%;right:16%;height:3px;background:repeating-linear-gradient(90deg,var(--soft) 0 10px,transparent 10px 20px);z-index:0}
.step{position:relative;z-index:1;text-align:center;padding:0 10px}
.step .n{width:90px;height:90px;border-radius:50%;background:#fff;border:3px solid var(--primary);display:grid;place-items:center;font-size:38px;margin:0 auto 24px;box-shadow:0 14px 34px rgba(108,63,197,.2);position:relative}
.step .n i{position:absolute;top:-6px;right:-6px;width:28px;height:28px;border-radius:50%;background:var(--pink);color:#fff;font-style:normal;font-family:var(--head);font-weight:800;font-size:13px;display:grid;place-items:center}
.step h3{font-size:21px;margin-bottom:10px}
.step p{color:var(--muted);font-size:15px;max-width:290px;margin:0 auto}

/* ---------- REQUIREMENTS ---------- */
.checklist{list-style:none;display:grid;gap:14px;max-width:520px;margin:40px auto 0}
.checklist li{display:flex;gap:14px;align-items:center;background:#fff;border:1.5px solid var(--border);border-radius:18px;padding:16px 20px;font-size:16px;font-weight:500}
.checklist li::before{content:"✓";flex:0 0 28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;font-size:14px;display:grid;place-items:center}

/* ---------- BOTTOM CTA ---------- */
.dl{background:linear-gradient(135deg,#6C3FC5 0%,#8a37b8 55%,#E8006F 130%);color:#fff;text-align:center}
.dl h2{color:#fff}
.dl .sub{color:rgba(255,255,255,.85);margin:0 auto}
.dl .ctas{justify-content:center;margin-top:34px}

@media(max-width:960px){
  .fb1{left:-10px}.fb2{right:-24px}
  .hero{padding-top:120px}
  .hero-grid{grid-template-columns:1fr}
  .visual{min-height:560px;margin-top:20px}
  .cards4,.cats{grid-template-columns:1fr 1fr}
  .earn{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}.steps::before{display:none}
}
@media(max-width:600px){
  .wrap{padding:0 16px}
  .cards4{grid-template-columns:1fr}
  .cats{gap:12px}
  .cat{padding:22px 12px}
  .cat .em{font-size:36px}
  .cat b{font-size:14px}
  .fb1{left:0}.fb2{right:0}.fb3{left:0}
  .ctas .btn{flex:1 1 100%;justify-content:center}
  .visual{min-height:540px}
}
