@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=IBM+Plex+Mono:wght@400;500;700&display=swap');

:root { --black:#050505; --white:#ededeb; --silver:#b7b9bb; --line:#454545; --acid:#d9ff38; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body { margin:0; min-width:320px; overflow-x:hidden; background:var(--black); color:var(--white); font-family:'IBM Plex Mono', monospace; font-size:16px; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; z-index:20; background:linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px); background-size:100% 4px; opacity:.6; }
.grain { position:fixed; inset:0; z-index:19; opacity:.07; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.topbar { min-height:76px; padding:14px 2.5vw; border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:28px; position:relative; z-index:2; }
.brand { display:flex; align-items:center; gap:12px; min-width:0; font-weight:700; letter-spacing:-.04em; }
.brand img { width:40px; height:40px; object-fit:cover; filter:grayscale(1) contrast(1.15); }
.brand span { white-space:nowrap; }
nav { display:flex; align-items:center; gap:28px; font-size:.78rem; font-weight:700; letter-spacing:.05em; }
nav a { border-bottom:1px solid transparent; padding:8px 0; }
nav a:hover, nav a:focus-visible { border-color:var(--white); }
.hero { min-height:calc(100vh - 76px); display:grid; grid-template-columns:1.03fr .97fr; border-bottom:1px solid var(--line); }
.hero-copy { padding:clamp(42px,7vw,108px) 4.5vw 64px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid var(--line); }
.eyebrow,.section-label { font-size:.72rem; letter-spacing:.17em; font-weight:700; color:var(--silver); }
h1,h2 { margin:0; font-family:'Archivo Black', sans-serif; text-transform:uppercase; line-height:.88; letter-spacing:-.065em; }
h1 { margin-top:30px; font-size:clamp(3.5rem,7.7vw,9rem); }
h1 span { display:block; }
h1 .silver { color:transparent; -webkit-text-stroke:1px var(--silver); }
.intro { max-width:650px; margin:34px 0 0; color:#bcbcbc; font-size:clamp(1rem,1.35vw,1.22rem); line-height:1.65; }
.intro strong { color:var(--white); }
.actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:38px; }
.button,.test-button { min-height:50px; padding:15px 20px; border:1px solid var(--silver); background:transparent; color:var(--white); font-family:'Archivo Black', sans-serif; font-size:.78rem; letter-spacing:.02em; cursor:pointer; transition:background .18s,color .18s,transform .18s; }
.button.primary { background:var(--white); color:var(--black); }
.button:hover,.button:focus-visible,.test-button:hover,.test-button:focus-visible { background:var(--acid); color:var(--black); border-color:var(--acid); transform:translateY(-2px); outline:none; }
.coin-stage { min-height:660px; padding:54px 3vw; display:grid; place-items:center; position:relative; overflow:hidden; background:radial-gradient(circle at 50% 42%,#252525 0, #0e0e0e 38%,#050505 69%); }
.coin-stage::before,.coin-stage::after { content:""; position:absolute; border:1px solid #3c3c3c; width:76%; aspect-ratio:1; border-radius:50%; }
.coin-stage::after { width:90%; border-style:dashed; animation:spin 34s linear infinite; }
.coin-stage img { width:min(72%,610px); aspect-ratio:1; object-fit:cover; position:relative; z-index:1; filter:grayscale(1) contrast(1.22) drop-shadow(0 28px 36px #000); animation:float 5s ease-in-out infinite; }
.serial { position:absolute; left:26px; bottom:24px; color:#777; font-size:.68rem; letter-spacing:.14em; }
.orbit-copy { position:absolute; bottom:23px; right:-72px; width:360px; transform:rotate(-90deg); transform-origin:center; font-size:.64rem; letter-spacing:.15em; color:#666; }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes float { 50% { transform:translateY(-13px) rotate(-1deg); } }
.ticker { height:48px; overflow:hidden; border-bottom:1px solid var(--line); background:var(--white); color:var(--black); font-family:'Archivo Black', sans-serif; display:flex; align-items:center; white-space:nowrap; }
.ticker div { min-width:max-content; animation:ticker 24s linear infinite; }
@keyframes ticker { to { transform:translateX(-50%); } }
.proof,.manifesto,.contract { padding:clamp(70px,9vw,140px) 4.5vw; border-bottom:1px solid var(--line); }
.proof h2,.manifesto h2,.contract h2 { margin-top:24px; font-size:clamp(3rem,7vw,7.8rem); }
.report-grid { margin-top:56px; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.report-grid article { min-height:250px; padding:24px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; }
.report-grid span,.meter-head { color:var(--silver); font-size:.72rem; letter-spacing:.13em; }
.report-grid strong { margin:auto 0; font-family:'Archivo Black', sans-serif; font-size:clamp(4rem,8vw,8rem); letter-spacing:-.08em; }
.report-grid small { font-size:.75rem; color:#777; }
.meter-wrap { margin-top:48px; }
.meter-head { display:flex; justify-content:space-between; margin-bottom:11px; }
.meter { height:12px; border:1px solid var(--silver); }
.meter i { display:block; height:100%; width:0; background:var(--acid); transition:width .55s ease; }
.test-button { margin-top:18px; }
.test-button:disabled { cursor:wait; }
.manifesto { display:grid; grid-template-columns:.42fr 1fr; gap:6vw; align-items:center; }
.manifesto-mark { font-family:'Archivo Black',sans-serif; font-size:clamp(13rem,30vw,34rem); line-height:.7; color:transparent; -webkit-text-stroke:2px #363636; text-align:center; }
.manifesto p { max-width:860px; font-size:clamp(1.05rem,1.8vw,1.6rem); line-height:1.65; color:#aaa; }
.manifesto .big-line { margin-top:36px; color:var(--acid); font-family:'Archivo Black',sans-serif; font-size:clamp(1.5rem,3vw,3rem); line-height:1; }
.contract { display:grid; grid-template-columns:.8fr 1.2fr; align-items:end; gap:5vw; }
.contract h2 { font-size:clamp(2.8rem,5.5vw,6rem); }
.ca { width:100%; min-width:0; padding:22px; display:grid; grid-template-columns:1fr auto; gap:10px; text-align:left; border:1px solid var(--silver); color:var(--white); background:#111; cursor:pointer; }
.ca span { color:#777; font-size:.7rem; letter-spacing:.14em; }
.ca strong { grid-column:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.9rem; }
.ca em { grid-column:2; grid-row:1/3; align-self:center; color:var(--acid); font-style:normal; font-family:'Archivo Black',sans-serif; font-size:.78rem; }
.ca:hover,.ca:focus-visible { border-color:var(--acid); outline:none; }
footer { min-height:92px; padding:25px 4.5vw; display:flex; align-items:center; justify-content:space-between; gap:24px; color:#7a7a7a; font-size:.7rem; }
footer span:first-child { color:var(--white); font-weight:700; }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }
@media (max-width:900px) {
  nav a:not([data-link="x"]) { display:none; }
  .hero { grid-template-columns:1fr; }
  .hero-copy { border-right:0; border-bottom:1px solid var(--line); }
  .coin-stage { min-height:560px; }
  .report-grid { grid-template-columns:repeat(2,1fr); }
  .manifesto { grid-template-columns:1fr; }
  .manifesto-mark { display:none; }
  .contract { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .topbar { min-height:64px; padding:10px 18px; }
  .brand span { max-width:210px; overflow:hidden; text-overflow:ellipsis; font-size:.78rem; }
  .brand img { width:36px; height:36px; }
  nav { gap:0; }
  nav a { font-size:.68rem; }
  .hero-copy { padding:54px 20px 45px; }
  h1 { font-size:clamp(3.2rem,16vw,5.2rem); }
  .intro { margin-top:26px; font-size:1rem; }
  .actions { flex-direction:column; }
  .button { width:100%; text-align:center; }
  .coin-stage { min-height:430px; padding:55px 20px; }
  .coin-stage img { width:82%; }
  .coin-stage::before { width:82%; }
  .coin-stage::after { width:105%; }
  .orbit-copy { display:none; }
  .proof,.manifesto,.contract { padding:72px 20px; }
  .proof h2,.manifesto h2,.contract h2 { font-size:clamp(2.65rem,13vw,4.2rem); }
  .report-grid { margin-top:38px; grid-template-columns:1fr; }
  .report-grid article { min-height:180px; }
  .report-grid strong { font-size:5.5rem; }
  .manifesto p { font-size:1rem; }
  .ca { grid-template-columns:1fr; }
  .ca em { grid-column:1; grid-row:auto; margin-top:8px; }
  footer { align-items:flex-start; flex-direction:column; }
}
