:root{
  --bg:#070b08;
  --paper:#0e1410;
  --ink:#eaf3ee;
  --muted:#a8b7ae;
  --line:#1a2a20;
  --accent:#36d68a;
  --accent2:#ffd23c;
  --danger:#ff4d6d;
  --shadow: 0 18px 50px rgba(0,0,0,.55);
  --radius:18px;
  --radius2:26px;
  --wrap: 1100px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(900px 450px at 15% -10%, rgba(54,214,138,.25), transparent 60%),
    radial-gradient(900px 450px at 85% 0%, rgba(255,210,60,.15), transparent 55%),
    linear-gradient(180deg, #040604 0%, var(--bg) 40%, #040604 100%);
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.35;
  overflow-x:hidden;
}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 18px}

/* subtle halftone + microprint vibe */
body:before{
  content:"";
  position:fixed;inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 1px 1px, rgba(255,255,255,.10) 1px, transparent 1.6px);
  background-size: 14px 14px;
  opacity:.045;
  mix-blend-mode: overlay;
  z-index:1;
}
body:after{
  content:"";
  position:fixed;inset:-30%;
  pointer-events:none;
  background:
    repeating-linear-gradient(
      135deg,
      rgba(54,214,138,.08) 0px,
      rgba(54,214,138,.08) 2px,
      transparent 2px,
      transparent 14px
    );
  opacity:.035;
  transform: rotate(6deg);
  z-index:1;
}

.skip{
  position:absolute;left:-999px;top:8px;
  background:var(--accent);color:#052313;
  padding:10px 12px;border-radius:12px;font-weight:800;
}
.skip:focus{left:10px;z-index:50}

.top{
  position:sticky;top:0;z-index:40;
  background:rgba(7,11,8,.68);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.top__inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 0;gap:14px;
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;min-width:0}
.brand__logo{
  width:44px;height:44px;border-radius:14px;object-fit:cover;
  border:2px solid rgba(255,255,255,.12);
  box-shadow: 0 10px 24px rgba(0,0,0,.45);
}
.brand__text{display:flex;flex-direction:column;min-width:0}
.brand__name{
  font-family: Bangers, Inter, system-ui;
  letter-spacing:.8px;
  font-size:20px;line-height:1;
  text-shadow: 2px 2px 0 rgba(0,0,0,.6);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.brand__sym{font-size:12px;color:var(--muted)}

.nav{display:flex;gap:16px;align-items:center}
.nav a{
  color:rgba(234,243,238,.85);
  text-decoration:none;font-weight:700;font-size:13px;
  padding:10px 10px;border-radius:14px;
}
.nav a:hover{background:rgba(255,255,255,.06)}

.top__cta{display:flex;gap:10px;align-items:center}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:12px 14px;border-radius:16px;
  font-weight:900;text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  color:var(--ink);
  background:rgba(255,255,255,.04);
  box-shadow: 0 12px 30px rgba(0,0,0,.35);
  transform: translateZ(0);
  position:relative;
  overflow:hidden;
}
.btn:before{
  content:"";
  position:absolute;inset:-2px;
  background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.14) 45%, transparent 60%);
  transform: translateX(-140%);
  opacity:.0;
}
.btn:hover{transform: translateY(-1px);background:rgba(255,255,255,.06)}
.btn:hover:before{
  opacity:.85;
  animation: btnShine 900ms ease-out 1;
}
.btn:active{transform: translateY(0px)}
.btn--primary{
  background:
    radial-gradient(800px 220px at 20% 0%, rgba(255,210,60,.22), transparent 50%),
    linear-gradient(135deg, rgba(54,214,138,.24), rgba(54,214,138,.08));
  border-color:rgba(54,214,138,.45);
}
.btn--ghost{background:rgba(255,255,255,.03)}

.mono{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}
.muted{color:var(--muted)}

.hero{padding:44px 0 18px;position:relative}
.hero:before{
  content:"";
  position:absolute;inset:-40px 0 auto 0;height:480px;
  background:
    radial-gradient(700px 280px at 15% 20%, rgba(54,214,138,.22), transparent 60%),
    radial-gradient(700px 280px at 75% 10%, rgba(255,210,60,.18), transparent 60%);
  filter: blur(0px);
  opacity:.85;
  pointer-events:none;
}
.hero > .wrap{position:relative;z-index:2}
.hero__grid{display:grid;grid-template-columns: 1.1fr .9fr;gap:22px;align-items:start}

.stamp{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:999px;
  background:rgba(54,214,138,.10);
  border:1px dashed rgba(54,214,138,.45);
  font-weight:900;font-size:12px;letter-spacing:.6px;
  text-transform:uppercase;
}

.hero__title{
  margin:14px 0 10px;
  font-family: Bangers, Inter, system-ui;
  font-size:64px;line-height:.92;
  letter-spacing:1.1px;
  text-shadow:
    3px 3px 0 rgba(0,0,0,.75),
    0 0 26px rgba(54,214,138,.18);
}
.hero__title--accent{
  display:inline-block;
  color:var(--accent2);
  -webkit-text-stroke: 1px rgba(0,0,0,.55);
  text-shadow:
    4px 4px 0 rgba(0,0,0,.85),
    0 0 30px rgba(255,210,60,.14);
}
.hero__sub{color:rgba(234,243,238,.84);font-size:16px;max-width:56ch;margin:0}
.hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 0}

.hero__badges{display:grid;grid-template-columns:repeat(3, 1fr);gap:10px;margin-top:16px}
.badge{
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;padding:12px 12px;
  position:relative;
  overflow:hidden;
}
.badge:before{
  content:"";
  position:absolute;inset:-50% -50%;
  background:
    radial-gradient(circle at 30% 30%, rgba(54,214,138,.20), transparent 45%),
    radial-gradient(circle at 70% 60%, rgba(255,210,60,.14), transparent 50%);
  transform: rotate(18deg);
}
.badge > *{position:relative}
.badge__k{font-size:11px;color:var(--muted);font-weight:800;letter-spacing:.7px}
.badge__v{font-weight:900;font-size:14px}

.hero__card{position:relative}
.bill-card{
  background:
    radial-gradient(1200px 480px at 20% 0%, rgba(54,214,138,.16), transparent 55%),
    radial-gradient(900px 420px at 90% 30%, rgba(255,210,60,.10), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius: var(--radius2);
  box-shadow: var(--shadow);
  overflow:hidden;
  position:relative;
}
.bill-card:before{
  content:"";
  position:absolute;inset:-2px;
  background:
    linear-gradient(110deg, transparent 0%, rgba(255,255,255,.10) 36%, transparent 55%),
    radial-gradient(circle at 30% 30%, rgba(54,214,138,.10), transparent 45%),
    radial-gradient(circle at 70% 70%, rgba(255,210,60,.08), transparent 50%);
  transform: translateX(-140%);
  opacity:.0;
  pointer-events:none;
}
.bill-card:hover:before{
  opacity:.9;
  animation: cardShine 1200ms ease-out 1;
}
.bill-card__top{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06);
  background: linear-gradient(90deg, rgba(10,15,13,.75), rgba(10,15,13,.25));
}
.seal{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  background: rgba(255,210,60,.15);
  border:2px solid rgba(255,210,60,.40);
  font-weight:1000;font-family:Bangers, Inter;
  letter-spacing:1px;
  text-shadow: 2px 2px 0 rgba(0,0,0,.7);
}
.routing__label{font-size:11px;color:var(--muted);font-weight:800;letter-spacing:.7px}
.routing__value{font-weight:900}
.bill-card__mid{display:grid;grid-template-columns: 120px 1fr;gap:14px;padding:16px}
.bill-card__img{
  width:120px;height:120px;border-radius:20px;object-fit:cover;
  border:2px solid rgba(255,255,255,.10);
  filter: contrast(1.05) saturate(.9);
}
.bill-card__headline{
  font-weight:1000;letter-spacing:.9px;
  font-size:12px;color:rgba(234,243,238,.85);
}
.bill-card__status{
  margin-top:10px;
  display:flex;gap:10px;align-items:center;
  font-weight:800;color:rgba(234,243,238,.86);
}
.dot{width:10px;height:10px;border-radius:999px;display:inline-block}
.dot--ok{background:var(--accent);box-shadow:0 0 12px rgba(54,214,138,.35)}
.dot--warn{background:var(--accent2);box-shadow:0 0 12px rgba(255,210,60,.28)}
.dot--bad{background:var(--danger);box-shadow:0 0 12px rgba(255,77,109,.28)}
.bill-card__bottom{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 16px;border-top:1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.02);
}
.toggle-rain{
  appearance:none;
  border-radius:16px;
  padding:10px 12px;
  background: rgba(54,214,138,.12);
  border:1px solid rgba(54,214,138,.35);
  color:var(--ink);
  font-weight:1000;
  cursor:pointer;
}
.toggle-rain:hover{background: rgba(54,214,138,.16)}
.toggle-rain--small{padding:10px 12px}
.note{
  margin-top:10px;
  color:rgba(168,183,174,.95);
  font-size:12px;
}

.section{padding:56px 0}
.section--alt{
  background:
    radial-gradient(1000px 520px at 15% 10%, rgba(54,214,138,.08), transparent 60%),
    radial-gradient(1000px 520px at 90% 10%, rgba(255,210,60,.06), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.00));
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.section__head{max-width:80ch}
.section__head h2{
  margin:0 0 8px;
  font-family:Bangers, Inter;
  font-size:44px;letter-spacing:1px;
  text-shadow: 2px 2px 0 rgba(0,0,0,.7);
}
.section__head p{margin:0;color:rgba(234,243,238,.82)}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.panel{
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.09);
  border-radius: var(--radius);
  padding:16px;
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
  position:relative;
  overflow:hidden;
}
.panel h3{
  margin:0 0 6px;
  font-weight:1000;
  letter-spacing:.3px;
}
.panel p{margin:0;color:rgba(234,243,238,.78)}
.panel:after{
  content:"";
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 20% 25%, rgba(255,255,255,.08), transparent 40%),
    radial-gradient(circle at 70% 65%, rgba(255,255,255,.06), transparent 42%);
  opacity:.55;
  pointer-events:none;
}

.steps{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:12px}
.step{
  display:grid;grid-template-columns: 72px 1fr;gap:14px;
  align-items:stretch;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius: var(--radius);
  padding:14px;
}
.step__n{
  font-family:Bangers, Inter;
  font-size:44px;line-height:1;
  display:grid;place-items:center;
  background: rgba(255,210,60,.10);
  border:1px solid rgba(255,210,60,.28);
  border-radius:18px;
  text-shadow: 2px 2px 0 rgba(0,0,0,.65);
}
.step__b h3{margin:0 0 6px;font-weight:1000}
.step__b p{margin:0;color:rgba(234,243,238,.8)}
.row{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.row--center{justify-content:center}

.embed{
  margin-top:18px;
  background: rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.10);
  border-radius: var(--radius2);
  overflow:hidden;
  box-shadow: var(--shadow);
}
.embed iframe{
  width:100%;
  height:min(74vh, 560px);
  border:0;
  background:#0b0f0c;
}

.join{display:grid;grid-template-columns: 1.2fr .8fr;gap:14px;margin-top:18px;align-items:start}
.join__banner{
  border-radius: var(--radius2);
  border:1px solid rgba(255,255,255,.10);
  overflow:hidden;
  box-shadow: var(--shadow);
  background: rgba(0,0,0,.2);
}
.join__banner img{display:block;width:100%;height:auto}
.join__panel{position:relative}
.links{display:flex;flex-direction:column;gap:10px;margin-top:12px;position:relative}
.link{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  text-decoration:none;color:var(--ink);
  padding:12px 12px;border-radius:16px;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.link:hover{background: rgba(255,255,255,.05)}
.link__k{font-weight:1000;letter-spacing:.8px;font-size:12px;color:var(--muted)}
.link__v{font-weight:900}

.callout{
  margin-top:14px;
  border-radius:18px;
  border:1px dashed rgba(54,214,138,.45);
  background: rgba(54,214,138,.08);
  padding:12px;
}
.callout__title{
  font-weight:1000;letter-spacing:.7px;font-size:12px;color:rgba(234,243,238,.92);
  margin-bottom:6px;
}
.callout__text{margin:0;color:rgba(234,243,238,.80)}

.foot{
  border-top:1px solid rgba(255,255,255,.06);
  background: rgba(0,0,0,.22);
  padding:18px 0 24px;
}
.foot__inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* Bill rain effect */
.bill-rain{
  position:fixed;inset:0;pointer-events:none;z-index:5;
  overflow:hidden;
}
.bill{
  position:absolute;top:-20vh;
  width:160px;height:62px;border-radius:14px;
  background: rgba(0,0,0,.12);
  border:1px solid rgba(255,255,255,.14);
  box-shadow: 0 14px 40px rgba(0,0,0,.35);
  transform: rotate(var(--rot, 0deg));
  opacity: .95;
  backdrop-filter: blur(1px);
  overflow:hidden;
}
.bill__img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform: scale(1.06);
  filter: contrast(1.06) saturate(1.05);
}
.bill--img:before{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(110deg, transparent 0%, rgba(255,255,255,.22) 40%, transparent 58%),
    radial-gradient(circle at 20% 20%, rgba(54,214,138,.12), transparent 45%);
  mix-blend-mode: overlay;
  opacity:.55;
}
.bill--img:after{
  content:"";
  position:absolute;inset:0;
  border:1px dashed rgba(255,255,255,.18);
  border-radius:14px;
  opacity:.55;
}

@keyframes btnShine{
  0%{transform: translateX(-140%);opacity:0}
  20%{opacity:.9}
  100%{transform: translateX(140%);opacity:0}
}
@keyframes cardShine{
  0%{transform: translateX(-140%);opacity:0}
  15%{opacity:.9}
  100%{transform: translateX(140%);opacity:0}
}

@media (max-width: 980px){
  .hero__grid{grid-template-columns:1fr;gap:16px}
  .nav{display:none}
  .hero__title{font-size:56px}
  .grid3{grid-template-columns:1fr}
  .join{grid-template-columns:1fr}
}

@media (prefers-reduced-motion: reduce){
  .bill-rain{display:none}
  .btn,.toggle-rain{transition:none}
}
