/* PUMP SURFER — no framework, no glossy Web3 */
:root{
  --sky:#18a9f4;
  --sky-2:#0c8fe8;
  --ocean:#0579b7;
  --deep:#07395a;
  --green:#25ef3e;
  --green-dark:#0a9f37;
  --red:#f24443;
  --ink:#07141d;
  --white:#fffdf4;
  --foam:#ffffff;
  --sun:#ffe278;
  --line:4px;
  --shadow:0 8px 0 rgba(7,20,29,.92);
  --header-h:76px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 14px)}
body{
  margin:0;
  min-width:320px;
  overflow-x:hidden;
  color:var(--ink);
  background:#dff6ff;
  font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif;
}
img{display:block;max-width:100%}
a{color:inherit}
button,input{font:inherit}
::selection{background:var(--green);color:var(--ink)}
.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;padding:10px 14px;border:3px solid var(--ink);border-radius:12px;font-weight:900}
.skip-link:focus{top:12px}
.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.section-pad{padding:104px 0;position:relative}
.eyebrow{
  margin:0 0 12px;
  font-weight:1000;
  letter-spacing:.16em;
  font-size:.8rem;
  color:var(--green-dark);
}
h1,h2,h3,.btn,.desktop-nav,.brand,.hero-kicker{
  font-family:"Arial Black","Trebuchet MS",Arial,sans-serif;
}
h1,h2,h3{letter-spacing:-.045em}
h2{font-size:clamp(2.5rem,6vw,5.4rem);line-height:.88;margin:0 0 24px}
p{line-height:1.65}
.lead{font-size:1.2rem;font-weight:900}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:54px;padding:0 24px;
  border:var(--line) solid var(--ink);border-radius:18px;
  text-decoration:none;font-weight:1000;letter-spacing:.02em;
  box-shadow:var(--shadow);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn:hover,.btn:focus-visible{transform:translateY(-3px);box-shadow:0 11px 0 var(--ink)}
.btn-primary{background:var(--green)}
.btn-secondary{background:var(--white)}
.social-link{
  width:38px;height:38px;display:inline-grid;place-items:center;text-decoration:none;
  transition:transform .18s ease, opacity .18s ease;
}
.social-link img{width:100%;height:100%;object-fit:contain}
.social-link:hover,.social-link:focus-visible{transform:translateY(-3px) rotate(-2deg)}
.social-link.tg{width:42px;height:42px}
.social-link[aria-disabled="true"]{opacity:.42;pointer-events:none;filter:saturate(.35)}

.site-header{
  position:fixed;z-index:1000;top:14px;left:50%;transform:translateX(-50%);
  width:min(1240px,calc(100% - 28px));height:var(--header-h);
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:0 18px;
  background:rgba(255,253,244,.95);
  border:var(--line) solid var(--ink);border-radius:24px;
  box-shadow:0 7px 0 var(--ink);
}
.brand{display:flex;align-items:center;gap:10px;font-weight:1000;text-decoration:none;font-size:.9rem;white-space:nowrap}
.brand img{width:44px;height:44px;border-radius:12px;border:3px solid var(--ink)}
.desktop-nav{display:flex;justify-content:center;gap:28px}
.desktop-nav a{font-size:.82rem;text-decoration:none;font-weight:1000}
.desktop-nav a:hover{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.header-socials{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.menu-toggle,.mobile-menu{display:none}

.hero{
  min-height:100svh;position:relative;display:flex;align-items:center;overflow:hidden;
  background-image:url("../assets/hero-desktop.webp");
  background-size:cover;background-position:center;
  border-bottom:6px solid var(--ink);
}
.hero-shade{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(5,85,143,.24) 0%,rgba(255,255,255,.10) 35%,rgba(255,255,255,0) 58%);
}
.hero-content{
  position:relative;z-index:2;width:min(1180px,calc(100% - 40px));margin-inline:auto;
  padding:calc(var(--header-h) + 42px) 0 58px;
}
.hero-kicker{
  display:inline-block;margin:0 0 10px;padding:8px 14px;
  color:var(--ink);background:var(--white);border:3px solid var(--ink);
  border-radius:999px;box-shadow:0 4px 0 var(--ink);font-weight:1000
}
.hero h1{
  max-width:570px;margin:0;color:var(--white);
  font-size:clamp(4.2rem,9vw,8.4rem);line-height:.8;
  -webkit-text-stroke:4px var(--ink);
  paint-order:stroke fill;
  text-shadow:8px 8px 0 var(--ink);
}
.hero-tagline{
  margin:24px 0 6px;max-width:500px;font-size:clamp(1.2rem,2vw,1.85rem);
  font-weight:1000;line-height:1.05;color:var(--white);
  text-shadow:0 3px 0 var(--ink),2px 2px 0 var(--ink);
}
.hero-sub{max-width:430px;margin:12px 0 0;font-weight:900;color:var(--ink);font-size:1rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.hero-socials{display:flex;align-items:center;gap:11px;margin-top:24px}
.scroll-cue{
  position:absolute;z-index:3;bottom:24px;left:50%;transform:translateX(-50%);
  display:flex;align-items:center;gap:10px;text-decoration:none;
  color:var(--ink);background:var(--white);border:3px solid var(--ink);
  border-radius:999px;padding:8px 14px;font-size:.72rem;font-weight:1000;
}
.scroll-cue b{font-size:1.15rem}

.about{
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(255,226,120,.65) 0 84px,transparent 86px),
    linear-gradient(180deg,#e9faff 0%,#b9efff 100%);
  border-bottom:6px solid var(--ink);
}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:72px;align-items:center}
.about-art{position:relative}
.about-art:before{
  content:"";position:absolute;inset:18px -18px -18px 18px;background:var(--green);
  border:4px solid var(--ink);border-radius:34px;z-index:0;
}
.about-art img{position:relative;z-index:1;width:100%;border:4px solid var(--ink);border-radius:34px;box-shadow:0 10px 0 var(--ink)}
.about-copy p:not(.eyebrow){max-width:610px;font-size:1.05rem}
.wave-mark{position:absolute;width:280px;height:78px;border-top:18px solid rgba(255,255,255,.7);border-radius:50%;transform:rotate(-9deg)}
.wave-mark-a{right:-80px;top:42px}

.chart-community{
  background:
    linear-gradient(180deg,#1aaef7 0%,#058fd1 42%,#0573a7 100%);
  color:var(--white);
  border-bottom:6px solid var(--ink);
}
.anchor-target{position:absolute;top:0}
.section-heading{text-align:center;margin-bottom:44px}
.section-heading .eyebrow{color:var(--green)}
.section-heading h2{text-shadow:5px 5px 0 var(--ink)}
.section-heading p{font-weight:900}
.chart-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:24px;align-items:stretch}
.chart-card,.stat,.ca-box,.community-box{
  border:var(--line) solid var(--ink);
  box-shadow:var(--shadow);
}
.chart-card{background:var(--white);border-radius:26px;overflow:hidden;color:var(--ink);min-height:620px}
.chart-topline{
  height:58px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;
  background:var(--green);border-bottom:4px solid var(--ink);font-weight:1000
}
.live-dot{font-size:.75rem}
.live-dot i{display:inline-block;width:9px;height:9px;background:var(--red);border:2px solid var(--ink);border-radius:50%;margin-right:5px}
.chart-frame{position:relative;height:558px;background:#f7fbfd}
.chart-frame iframe{width:100%;height:100%;border:0;display:block}
.chart-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:7px;padding:30px;background:
  linear-gradient(135deg,transparent 0 48%,rgba(37,239,62,.12) 48% 52%,transparent 52% 100%),
  #eefaff}
.chart-empty strong{font-size:1.35rem}
.chart-empty span{font-size:.92rem}
.chart-empty code{padding:2px 6px;border:2px solid var(--ink);border-radius:7px;background:#fff}
.info-column{display:flex;flex-direction:column;gap:20px}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.stat{min-height:106px;padding:18px;background:var(--white);color:var(--ink);border-radius:20px}
.stat span{display:block;font-size:.72rem;font-weight:1000;letter-spacing:.08em;margin-bottom:8px;color:#377089}
.stat strong{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(1.1rem,2.1vw,1.65rem)}
.ca-box{display:flex;align-items:center;gap:12px;padding:14px;background:#dffaff;color:var(--ink);border-radius:20px}
.ca-copy{min-width:0;flex:1}
.ca-copy span{display:block;font-size:.7rem;font-weight:1000;color:#377089;margin-bottom:4px}
.ca-copy code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}
.copy-btn{
  min-width:86px;height:44px;border:3px solid var(--ink);border-radius:14px;
  background:var(--green);font-weight:1000;box-shadow:0 4px 0 var(--ink);cursor:pointer
}
.copy-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}
.community-box{
  position:relative;flex:1;min-height:300px;overflow:hidden;padding:26px 180px 26px 24px;
  border-radius:24px;background:var(--deep);color:var(--white)
}
.community-box .eyebrow{color:var(--green)}
.community-box h3{font-size:2rem;margin:0 0 10px}
.community-box p{font-weight:900;line-height:1.45}
.community-socials{display:flex;gap:10px;margin-top:18px}
.chart-mascot{
  position:absolute;right:-32px;bottom:-46px;width:250px;max-height:330px;object-fit:contain;
  filter:drop-shadow(0 8px 0 rgba(0,0,0,.55));
  animation:floaty 3.4s ease-in-out infinite;
}

.site-footer{position:relative;overflow:hidden;background:#e8fbff;color:var(--ink);padding:36px 0 18px}
.footer-wave{position:absolute;left:-4%;right:-4%;top:-70px;height:130px;background:var(--green);border-bottom:5px solid var(--ink);border-radius:50%}
.footer-inner{position:relative;display:grid;grid-template-columns:250px 1fr auto;gap:36px;align-items:end;padding-top:48px}
.footer-mascot{width:250px;filter:drop-shadow(0 7px 0 rgba(7,20,29,.75))}
.footer-copy h2{font-size:clamp(2.4rem,5vw,4.8rem);margin:0;line-height:.9}
.footer-ticker{font-weight:1000;font-size:1.2rem;margin:8px 0 14px}
.footer-socials{display:flex;gap:9px}
.footer-note{display:flex;flex-direction:column;gap:8px;text-align:right;font-size:.68rem;font-weight:1000;letter-spacing:.06em}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.reveal.is-visible{opacity:1;transform:none}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-9px) rotate(1deg)}}

@media (max-width: 980px){
  :root{--header-h:66px}
  .site-header{top:10px;height:var(--header-h);grid-template-columns:1fr auto}
  .brand span,.desktop-nav,.header-socials{display:none}
  .brand img{width:40px;height:40px}
  .menu-toggle{
    display:grid;gap:5px;width:42px;height:42px;place-content:center;
    border:3px solid var(--ink);border-radius:13px;background:var(--green);cursor:pointer
  }
  .menu-toggle span{display:block;width:20px;height:3px;background:var(--ink);border-radius:9px}
  .mobile-menu{
    position:absolute;display:none;top:calc(100% + 10px);left:0;right:0;
    background:var(--white);border:4px solid var(--ink);border-radius:22px;box-shadow:0 7px 0 var(--ink);
    padding:18px
  }
  .mobile-menu.is-open{display:block}
  .mobile-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .mobile-menu nav a{padding:12px;border:3px solid var(--ink);border-radius:14px;text-decoration:none;text-align:center;font-weight:1000;background:#eafaff}
  .mobile-socials{display:flex;justify-content:center;gap:12px;margin-top:16px}
  .about-grid{grid-template-columns:1fr;gap:44px}
  .about-art{width:min(680px,100%);margin:auto}
  .chart-layout{grid-template-columns:1fr}
  .info-column{display:grid;grid-template-columns:1fr 1fr}
  .community-box{min-height:320px}
  .ca-box{grid-column:1/-1}
  .footer-inner{grid-template-columns:200px 1fr}
  .footer-note{grid-column:1/-1;flex-direction:row;justify-content:space-between;text-align:left}
  .footer-mascot{width:200px}
}

@media (max-width: 700px){
  .shell{width:min(100% - 26px,1180px)}
  .section-pad{padding:76px 0}
  .hero{
    min-height:100svh;
    background-image:url("../assets/hero-mobile.webp");
    background-size:auto 100%;
    background-position:center top;
    align-items:flex-start;
  }
  .hero-shade{
    background:linear-gradient(180deg,rgba(0,119,190,.15) 0%,rgba(0,119,190,.12) 42%,rgba(0,0,0,0) 66%);
  }
  .hero-content{
    width:min(100% - 28px,560px);
    padding-top:calc(var(--header-h) + 55px);
    text-align:center;
  }
  .hero h1{
    max-width:none;font-size:clamp(3.25rem,16vw,5.6rem);line-height:.82;
    -webkit-text-stroke:3px var(--ink);text-shadow:5px 5px 0 var(--ink)
  }
  .hero-tagline{margin:18px auto 0;max-width:360px;font-size:1.22rem}
  .hero-sub{margin:10px auto 0;max-width:340px;font-size:.9rem;background:rgba(255,253,244,.75);border-radius:12px;padding:6px 9px}
  .hero-actions{justify-content:center;margin-top:18px}
  .hero-actions .btn{min-height:48px;padding:0 17px;font-size:.8rem}
  .hero-socials{justify-content:center;margin-top:18px}
  .scroll-cue{bottom:12px}
  .about-grid{gap:38px}
  .about-art:before{inset:11px -9px -11px 9px}
  .about-copy{text-align:center}
  .about-copy p:not(.eyebrow){margin-left:auto;margin-right:auto}
  h2{font-size:clamp(2.7rem,13vw,4.6rem)}
  .section-heading{margin-bottom:28px}
  .chart-card{min-height:480px}
  .chart-frame{height:420px}
  .info-column{display:flex}
  .stats-grid{grid-template-columns:1fr 1fr}
  .community-box{padding:24px 145px 24px 20px;min-height:300px}
  .chart-mascot{width:210px;right:-48px;bottom:-32px}
  .footer-inner{grid-template-columns:1fr;text-align:center;justify-items:center;padding-top:58px}
  .footer-mascot{width:min(250px,70vw)}
  .footer-socials{justify-content:center}
  .footer-note{width:100%;flex-direction:column;align-items:center;text-align:center}
}

@media (max-width: 430px){
  .site-header{width:calc(100% - 18px);padding:0 12px}
  .hero-content{padding-top:calc(var(--header-h) + 46px)}
  .hero-kicker{font-size:.72rem}
  .hero h1{font-size:3.25rem}
  .hero-tagline{font-size:1rem;max-width:300px}
  .hero-sub{font-size:.78rem;max-width:290px}
  .hero-actions{gap:9px}
  .hero-actions .btn{min-height:44px;padding:0 13px;font-size:.72rem;border-width:3px;border-radius:14px;box-shadow:0 5px 0 var(--ink)}
  .hero-socials .social-link{width:34px;height:34px}
  .hero-socials .social-link.tg{width:38px;height:38px}
  .scroll-cue{font-size:.62rem;padding:6px 10px}
  .stats-grid{gap:10px}
  .stat{padding:14px;min-height:96px}
  .ca-box{align-items:stretch;flex-direction:column}
  .copy-btn{width:100%}
  .community-box{padding:22px 120px 22px 18px;min-height:310px}
  .community-box h3{font-size:1.65rem}
  .community-box p{font-size:.86rem}
  .chart-mascot{width:185px;right:-54px;bottom:-18px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}
