
*{box-sizing:border-box;margin:0;padding:0}
:root{--p:#7C3AED;--p-dark:#5B21B6;--p-deep:#4C1D95;--soft:#EDE9FE;--soft-t:#5B21B6;--yellow:#ffd863;--yellow-t:#3D2E00;--green:#00a964;--black:#1a1a1a;--muted:#5c5c5c;--border:#d8d8d8;--bg:#f7f7f7;--font:Inter,system-ui,-apple-system,sans-serif}
html,body{overflow-x:hidden;max-width:100vw}
body{font-family:var(--font);color:var(--black);background:#fff;line-height:1.45}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.hdr{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.98);border-bottom:1px solid #e8e8e8;height:56px}
.logo{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:1.15rem}
.logo img{width:28px;height:28px;flex-shrink:0}
.nlink{font-size:.9rem;font-weight:600;padding:8px 12px}
.nlink:hover{color:var(--p)}
.btn-p{font-size:.88rem;font-weight:700;padding:9px 16px;border-radius:999px;background:var(--p);color:#fff}
.ibtn{width:44px;height:44px;border:0;background:0;cursor:pointer;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.hero{text-align:center;padding:48px 20px 0;max-width:720px;margin:0 auto}
.badge{display:inline-block;background:var(--soft);color:var(--soft-t);font-size:.78rem;font-weight:700;padding:7px 14px;border-radius:999px;margin-bottom:16px}
.hero h1{font-size:clamp(2rem,6.5vw,3.2rem);font-weight:800;line-height:1.08;letter-spacing:-.04em;margin:0 0 14px}
.hero .sub{font-size:1.05rem;color:var(--muted);max-width:440px;margin:0 auto 24px}
.cta{display:inline-flex;background:var(--p-deep);color:#E9D5FF;font-weight:700;padding:14px 28px;border-radius:999px}
.fan-w{position:relative;height:200px;margin:36px auto 0;max-width:880px;overflow:hidden}
.fan{position:relative;width:100%;height:100%}
.fc{position:absolute;bottom:8px;width:min(28vw,150px);aspect-ratio:4/3;border-radius:14px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,.16);background:#ddd}
.fc img{width:100%;height:100%;object-fit:cover}
.fc:nth-child(1){left:50%;transform:translateX(-200%) rotate(-16deg) translateY(24px) scale(.88)}
.fc:nth-child(2){left:50%;transform:translateX(-100%) rotate(-8deg) translateY(8px) scale(.95)}
.fc:nth-child(3){left:50%;transform:translateX(-50%) scale(1.05);z-index:5;width:min(34vw,180px)}
.fc:nth-child(4){left:50%;transform:translateX(0%) rotate(8deg) translateY(8px) scale(.95)}
.fc:nth-child(5){left:50%;transform:translateX(100%) rotate(16deg) translateY(24px) scale(.88)}
@media(max-width:640px){.fc:nth-child(1),.fc:nth-child(5){display:none}}
.stats{text-align:center;padding:48px 20px;max-width:640px;margin:0 auto}
.stats h2{font-size:clamp(1.4rem,4vw,2rem);font-weight:800;margin:0 0 10px}
.stats p{color:var(--muted)}
.how{
  background:#f4f3f1;
  padding:clamp(4.75rem,9vw,7rem) 20px 72px;
  border-top-left-radius:50% clamp(56px,8vw,110px);
  border-top-right-radius:50% clamp(56px,8vw,110px);
}
.how-in{max-width:1040px;margin:0 auto;display:grid;gap:40px;align-items:center}
@media(min-width:860px){.how-in{grid-template-columns:380px 1fr;gap:56px}}
.how-img-wrap{position:relative;max-width:380px;margin:0 auto;width:100%}
.how-pause{position:absolute;top:12px;right:12px;z-index:5;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.9);cursor:pointer;display:flex;align-items:center;justify-content:center}
.how-card{background:#B8E8F0;border-radius:24px;aspect-ratio:1;position:relative;overflow:hidden}
.how-slide{position:absolute;inset:32px;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.96);transition:opacity .5s,transform .5s;pointer-events:none}
.how-slide.on{opacity:1;transform:scale(1);pointer-events:auto}
.phone-ui{width:min(70%,220px);background:#fff;border-radius:28px;padding:18px 14px;box-shadow:0 16px 48px rgba(0,0,0,.14);text-align:center}
.phone-ui .lbl{font-size:.72rem;font-weight:700;color:#6b7280;margin-bottom:10px}
.si{width:40px;height:40px;border-radius:50%;background:#f3f4f6;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}
.social-icons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:14px}
.phone-ui .sbtn{display:inline-block;background:var(--p-deep);color:#fff;font-size:.78rem;font-weight:700;padding:9px 16px;border-radius:999px}
.phone-ui .goal-bar{height:8px;background:#e8e8e8;border-radius:100px;margin:12px 0 6px;overflow:hidden}
.phone-ui .goal-fill{height:100%;width:45%;background:var(--p);border-radius:100px}
.phone-ui .goal-amt{font-size:.8rem;font-weight:700}
.phone-ui .wallet{margin-top:10px;padding:10px;background:#f8f5ff;border-radius:12px;font-size:.78rem;color:var(--p-dark);font-weight:600}
.how h2{font-size:clamp(1.35rem,3.5vw,1.8rem);font-weight:800;margin:0 0 24px}
.srow{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid #e5e7eb;cursor:pointer}
.srow:last-child{border:0}.srow:not(.active){opacity:.55}.srow.active{opacity:1}
.sn{width:36px;height:36px;border-radius:50%;background:var(--soft);color:var(--soft-t);font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}
.sn svg{position:absolute;inset:-3px;width:calc(100% + 6px);height:calc(100% + 6px);transform:rotate(-90deg)}
.sn svg circle{fill:none;stroke:#e5e7eb;stroke-width:3}
.sn svg .prog{stroke:var(--p);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100}
.srow.active .sn svg .prog{animation:howProg var(--step-ms) linear forwards}
@keyframes howProg{to{stroke-dashoffset:0}}
.srow h3{font-size:1.05rem;font-weight:700;margin:0 0 4px}
.srow p{font-size:.9rem;color:var(--muted)}
.disc{padding:3.5rem 0 4rem}.disc .in{max-width:1120px;margin:0 auto;padding:0 16px}
.disc h2{font-size:clamp(1.2rem,3.5vw,1.5rem);font-weight:800;margin:0 0 14px;color:#232323}
.disc-tools{display:flex;align-items:center;gap:12px;margin-bottom:16px;position:relative;z-index:20}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;padding:8px 16px;border-radius:24px;border:1px solid var(--border);background:#fff;font-family:inherit;cursor:pointer}
.pill.open{border-color:#bbb;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.pill-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;min-width:240px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.14);padding:8px;z-index:40}
.pill-menu.open{display:block}
.pill-menu button{display:block;width:100%;text-align:left;padding:12px 14px;border:0;background:0;font-family:inherit;font-size:.9rem;font-weight:600;border-radius:8px;cursor:pointer}
.pill-menu button:hover,.pill-menu button.active{background:var(--soft);color:var(--p-dark)}
.discover-grid{display:grid;grid-template-columns:1fr;gap:16px;width:100%}
.campaign-card{display:block;background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
.campaign-card:hover{box-shadow:none}
.card-content{background:transparent;padding:10px 2px 0}
.card-title{font-size:.95rem;font-weight:700;line-height:1.3;margin:0 0 8px;color:#232323}
.progress-track{height:6px;background:#ececec;border-radius:99px;overflow:hidden;margin-bottom:6px}
.progress-fill{height:100%;background:#4caf50;border-radius:99px}
.raised-label{font-size:.85rem;font-weight:600;color:#333}
.mini-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
.more-grid{display:none!important}
.yel{
  background:#ffd65c;
  text-align:center;
  padding:clamp(4.5rem,10vw,7rem) 24px clamp(6rem,14vw,9.5rem);
  position:relative;
  overflow:hidden;
}
/* Downward arc: yellow is lowest in the center, like GoFundMe */
.yel{
  border-bottom-left-radius:50% clamp(88px,12vw,170px);
  border-bottom-right-radius:50% clamp(88px,12vw,170px);
}
.yel:after{content:none;display:none}
.yel-inner{
  position:relative;
  z-index:1;
  max-width:900px;
  margin:0 auto;
  padding:0 12px;
}
.yel-badge{
  display:inline-block;
  background:#3a2e0a;
  color:#ffd65c;
  font-size:.75rem;
  font-weight:700;
  padding:7px 14px;
  border-radius:999px;
  margin-bottom:clamp(18px,3vw,28px);
  letter-spacing:.01em;
  font-family:Inter,system-ui,-apple-system,sans-serif;
}
.yel h2{
  font-family:Inter,system-ui,-apple-system,sans-serif;
  font-size:clamp(2.1rem,5.8vw,3.4rem);
  font-weight:700;
  color:#2b2408;
  margin:0 auto clamp(16px,2.5vw,24px);
  line-height:1.12;
  letter-spacing:-.035em;
  max-width:820px;
}
.yel-sub{
  font-family:Inter,system-ui,-apple-system,sans-serif;
  font-size:clamp(1.05rem,2.4vw,1.25rem);
  font-weight:400;
  color:#2b2408;
  max-width:620px;
  margin:0 auto clamp(14px,2vw,20px);
  line-height:1.55;
}
.yel-sub a{
  color:#2b2408;
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-thickness:1.5px;
}
.yel-sub a:hover{opacity:.7}
.yel-more{
  font-family:Inter,system-ui,-apple-system,sans-serif;
  font-size:clamp(.95rem,2vw,1.05rem);
  font-weight:400;
  color:#2b2408;
  margin:0 auto;
  line-height:1.5;
}
.yel-more a{
  color:#2b2408;
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:3px;
}
.yel-more a:hover{opacity:.7}
.topics{padding:32px 16px 40px;background:#fff}.topics .in{max-width:960px;margin:0 auto}
.topics h2{font-size:1.1rem;font-weight:800;margin:0 0 12px;text-align:center}
.topics-grid{display:grid;gap:12px}
@media(min-width:700px){.topics-grid{grid-template-columns:1fr 1fr 1fr}}
.topic-card{border-radius:12px;overflow:hidden;min-height:0;position:relative;display:flex;flex-direction:column;justify-content:center;padding:14px 16px;color:#fff}
.topic-card.dark{background:linear-gradient(135deg,#2d1b4e,#4c1d95)}
.topic-card.mint{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#064e3b}
.topic-card.lilac{background:linear-gradient(135deg,#ede9fe,#c4b5fd);color:#4c1d95}
.topic-badge{position:absolute;top:10px;left:10px;background:#c4b5fd;color:#4c1d95;font-size:.65rem;font-weight:700;padding:3px 8px;border-radius:999px}
.topic-card h3{font-size:.95rem;font-weight:800;margin:0 0 4px}
.topic-card p{font-size:.8rem;opacity:.9;margin:0 0 6px;line-height:1.35}
.topic-card a{font-weight:700;font-size:.8rem;color:inherit}
.tr{background:#0e3b2c;color:#fff;padding:clamp(48px,7vw,88px) 24px}
.tr-in{max-width:1120px;margin:0 auto;display:grid;gap:36px;align-items:center}
@media(min-width:860px){.tr-in{grid-template-columns:1.05fr .95fr;gap:48px}}
.tr-badge{display:inline-block;background:#d6f56a;color:#1c2b12;font-size:.78rem;font-weight:700;padding:6px 10px;border-radius:6px;margin-bottom:18px}
.tr h2{font-size:clamp(2.1rem,4.6vw,3.35rem);font-weight:700;line-height:1.05;letter-spacing:-.035em;margin:0 0 18px;color:#fff;max-width:560px}
.tr p{color:rgba(255,255,255,.88);font-size:1.05rem;line-height:1.5;max-width:460px;margin:0}
.tr-photo{border-radius:18px;overflow:hidden;min-height:280px}
.tr-photo img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/4.2}
.ft{padding:0 0 12px;border-top:1px solid #ececec;text-align:left;background:#fff;color:#1a1a1a}
.ft-note{max-width:1120px;margin:0 auto;padding:16px 28px 14px;font-size:.8rem;color:#6b6b6b}
.ft-grid{max-width:1120px;margin:0 auto;padding:28px 28px 8px;display:grid;grid-template-columns:1fr 1fr;gap:22px 28px;border-top:1px solid #eee}
@media(min-width:860px){.ft-grid{grid-template-columns:1.1fr 1.2fr 1.15fr .9fr}}
.ft h4{font-size:.95rem;font-weight:800;margin:0 0 8px}
.ft-grid a,.ft-more-links a{display:block;color:#3f3f46;font-size:.95rem;padding:6px 0}
.ft a:hover{color:var(--p)}
.ft-more{max-width:1120px;margin:0 auto;padding:6px 28px 22px}
.ft-more summary{cursor:pointer;font-size:.95rem;font-weight:600;list-style:none;display:flex;align-items:center;gap:8px}
.ft-more summary::-webkit-details-marker{display:none}
.ft-more-links{padding-top:8px}
.ft-bar{max-width:1120px;margin:0 auto;padding:20px 28px 28px;border-top:1px solid #eee;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.ft-locale{display:inline-flex;align-items:center;gap:8px;border:1px solid #e4e4e7;border-radius:999px;padding:7px 12px;font-size:.88rem;font-weight:650}
.ft-dot{width:16px;height:16px;border-radius:50%;background:linear-gradient(180deg,var(--p),var(--p-deep));display:inline-block}
.ft-legal{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;font-size:.88rem;color:#3f3f46;align-items:center}
.ft-legal a{display:inline;padding:0;color:#3f3f46}
.ft-side{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.ft-social{display:flex;gap:16px}
.ft-social a{display:grid;place-items:center;width:28px;height:28px;padding:0;color:#1a1a1a}
.ft-social a:hover{color:var(--p)}
.ft-apps{display:flex;gap:8px}
.ft-app{display:flex;flex-direction:column;background:var(--p-deep);color:#fff;border-radius:8px;padding:6px 10px;min-width:118px;line-height:1.15}
.ft-app small{font-size:.62rem;opacity:.85}
.ft-app b{font-size:.82rem}
@media(max-width:700px){.ft-side{align-items:flex-start}.ft-apps{flex-wrap:wrap}}

.ftop{background:#fff;padding:28px 16px 56px}
.ftop-in{max-width:1040px;margin:0 auto}
.ftop h2{font-size:1.65rem;font-weight:800;letter-spacing:-.03em;margin:0 0 16px;text-align:left;color:#1a1a1a}
.ftop-hero{display:grid;grid-template-columns:1fr;border-radius:16px;overflow:hidden;background:#f5f5f5;min-height:280px}
@media(min-width:800px){.ftop-hero{grid-template-columns:1.18fr .82fr}}
.ftop-art{position:relative;background:#123d2c;min-height:280px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ftop-geo{position:absolute;inset:0;width:100%;height:100%}
.ftop-badge{position:absolute;top:14px;left:14px;z-index:3;font-size:.72rem;font-weight:700;padding:4px 9px;border-radius:7px}
.ftop-badge.new{background:#e4d4fb;color:#6d28d9}
.ftop-badge.urgent{background:#16324f;color:#fff}
.ftop-phone{width:168px;background:#111;border-radius:26px;padding:8px;position:relative;z-index:2;box-shadow:0 18px 40px rgba(0,0,0,.28)}
.ftop-screen{background:#fff;border-radius:20px;overflow:hidden;min-height:240px}
.ftop-status{display:flex;justify-content:space-between;font-size:9px;font-weight:700;padding:6px 10px 2px;color:#111}
.ftop-appbar{display:flex;align-items:center;justify-content:space-between;padding:4px 10px 8px;font-size:11px;font-weight:800}
.ftop-gcard{margin:0 10px;background:#d9f99d;border-radius:14px;padding:10px;text-align:center}
.ftop-ring{width:54px;height:54px;margin:2px auto 6px;border-radius:50%;background:conic-gradient(#16a34a 0 78%,#bbf7d0 78% 100%);display:grid;place-items:center}
.ftop-ring i{width:38px;height:38px;border-radius:50%;background:#d9f99d;display:block}
.ftop-amt{font-weight:800;font-size:15px}
.ftop-amt small{font-weight:600;font-size:11px;color:#166534}
.ftop-plan{margin:10px;background:#f4f4f5;border-radius:12px;padding:8px 10px;font-size:10px;color:#444}
.ftop-plan b{display:block;font-size:11px;color:#111;margin-bottom:2px}
.ftop-mark{position:absolute;right:16px;bottom:14px;z-index:2;color:#b6f36b;font-weight:800;font-size:13px;display:flex;align-items:center;gap:6px}
.ftop-copy{padding:32px 28px;display:flex;flex-direction:column;justify-content:center;background:#f5f5f5}
.ftop-copy h3{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;margin:0 0 10px}
.ftop-copy p{font-size:.98rem;line-height:1.5;color:#3f3f46;margin:0}
.ftop-more{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-weight:600;font-size:.95rem;color:#1a1a1a;text-decoration:none}
.ftop-row{display:grid;grid-template-columns:1fr;gap:16px;margin-top:16px}
@media(min-width:800px){.ftop-row{grid-template-columns:1fr 1fr 1fr}}
.ftop-card{border-radius:16px;overflow:hidden;background:#fff}
.ftop-media{height:196px;position:relative;overflow:hidden}
.ftop-media.mint{background:linear-gradient(180deg,#c8f7a8,#b6ee98)}
.ftop-media.sea{background:#7ebfe0}
.ftop-media.lilac{background:#d7c2f6}
.ftop-mini{position:absolute;left:50%;top:16px;transform:translateX(-50%);width:132px;background:#111;border-radius:18px;padding:6px;z-index:2}
.ftop-mini .ftop-screen{min-height:0;border-radius:14px}
.ftop-fund{margin:6px 8px;border:1px solid #eee;border-radius:10px;padding:8px;font-size:9px;color:#666}
.ftop-fund strong{display:block;font-size:18px;color:#111}
.ftop-chips{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;z-index:3;padding:0 8px}
.ftop-chips span{background:#fff;border-radius:8px;padding:6px 7px;font-size:8px;font-weight:800;box-shadow:0 4px 10px rgba(0,0,0,.12);color:#333;line-height:1.1;text-align:center}
.ftop-map{position:absolute;inset:0;width:100%;height:100%}
.ftop-heart{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:36px;height:32px;z-index:2}
.ftop-heart.lg{width:54px;height:48px}
.ftop-body{padding:16px 16px 18px}
.ftop-body h3{font-size:1.02rem;font-weight:800;letter-spacing:-.02em;line-height:1.3;margin:0;min-height:2.6em}

@media(max-width:700px){
  .tr{padding:40px 16px}
  .tr h2{font-size:2rem}
  .tr-photo{min-height:220px}
  .ft-note,.ft-grid,.ft-more,.ft-bar{padding-left:16px;padding-right:16px}
  .ft-grid{grid-template-columns:1fr 1fr;gap:18px 16px}
  .ft-bar{flex-direction:column;align-items:flex-start}
  .ft-side{align-items:flex-start;width:100%}
  .ftop{padding:20px 12px 40px}
  .ftop-copy{padding:22px 16px}
  .ftop-chips{flex-wrap:wrap}
  section{max-width:100%}
}
.ft-flag{display:block;flex-shrink:0;border-radius:50%}
