:root { --ink:#090909; --paper:#f3f0e8; --hot:#ff1fa8; --acid:#c8ff00; --violet:#7657ff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
button, a { -webkit-tap-highlight-color:transparent; }
::selection { background:var(--hot); color:white; }

.nav-shell { position:absolute; z-index:10; top:0; left:0; right:0; height:86px; display:flex; align-items:center; gap:42px; padding:0 4.2vw; color:white; border-bottom:1px solid rgba(255,255,255,.24); mix-blend-mode:screen; }
.brand { font-weight:900; letter-spacing:-.04em; font-size:17px; display:flex; align-items:center; gap:10px; }
.brand-mark { color:var(--acid); font-size:22px; }
.nav-shell nav { display:flex; gap:28px; margin-left:auto; font:700 12px/1 monospace; letter-spacing:.12em; text-transform:uppercase; }
.nav-shell nav a { opacity:.72; transition:.2s ease; }
.nav-shell nav a:hover, .nav-shell nav a:focus-visible { opacity:1; color:var(--acid); }

.hero { min-height:780px; height:100svh; position:relative; overflow:hidden; background:#08070a; color:white; isolation:isolate; }
.hero-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(1.08) contrast(1.05); }
.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg, rgba(0,0,0,.82) 0%,rgba(0,0,0,.34) 39%,rgba(0,0,0,.02) 70%), linear-gradient(0deg,rgba(0,0,0,.45),transparent 40%); }
.hero::after { content:""; position:absolute; inset:0; pointer-events:none; opacity:.25; background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.08) 4px); mix-blend-mode:overlay; }
.hero-copy { position:relative; z-index:2; padding:clamp(150px,20vh,220px) 4.2vw 100px; width:min(720px,58vw); }
.eyebrow,.section-kicker { font:800 11px/1.1 monospace; letter-spacing:.22em; text-transform:uppercase; }
.eyebrow { display:flex; align-items:center; gap:10px; color:var(--acid); }
.eyebrow span { display:block; width:38px; height:2px; background:currentColor; }
.hero h1 { margin:25px 0 20px; font:900 clamp(76px,10.8vw,172px)/.72 Arial Black,Arial,sans-serif; letter-spacing:-.105em; transform:scaleX(.9); transform-origin:left center; position:relative; text-shadow:7px 0 0 rgba(255,31,168,.65), -5px 0 0 rgba(0,255,214,.5); }
.hero h1::after { content:attr(data-text); position:absolute; inset:51% auto auto 2%; color:transparent; -webkit-text-stroke:2px var(--acid); opacity:.42; clip-path:polygon(0 0,100% 0,100% 32%,0 46%); transform:translateX(8px); white-space:nowrap; }
.hero-lede { max-width:540px; color:#e8e8e8; font:600 clamp(16px,1.55vw,22px)/1.45 Arial,sans-serif; letter-spacing:-.02em; }
.ca-card { width:min(620px,100%); display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px 16px; align-items:center; margin-top:28px; padding:14px 14px 14px 18px; border:2px solid rgba(255,255,255,.78); background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.66)),url("assets/button-noise-texture.png") center 63%/cover; box-shadow:6px 6px 0 rgba(118,87,255,.8); transform:rotate(-.4deg); }
.ca-label { grid-column:1; color:var(--acid); font:800 9px/1 monospace; letter-spacing:.18em; }
.ca-card code { grid-column:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:white; font:800 13px/1.2 monospace; }
.hero-actions { display:flex; gap:12px; margin-top:18px; flex-wrap:wrap; }
.asset-button { min-height:52px; position:relative; isolation:isolate; display:inline-flex; justify-content:center; align-items:center; gap:24px; padding:0 24px; overflow:hidden; border:2px solid white; background-image:url("assets/button-noise-texture.png"); background-size:520px 520px; color:white; box-shadow:5px 5px 0 var(--acid); font:900 12px/1 monospace; letter-spacing:.1em; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease,filter .18s ease; }
.asset-button::before { content:""; position:absolute; inset:0; z-index:-1; background:rgba(0,0,0,.34); mix-blend-mode:multiply; }
.asset-button span { position:relative; z-index:1; text-shadow:1px 1px 0 #000,-1px -1px 0 #000; }
.asset-button:hover,.asset-button:focus-visible { transform:translate(-2px,-2px) rotate(-.8deg); box-shadow:8px 8px 0 var(--hot); filter:saturate(1.35) contrast(1.12); outline:none; }
.asset-button-copy { grid-column:2; grid-row:1 / span 2; min-width:112px; height:50px; padding-inline:16px; background-position:18% 82%; border-color:var(--acid); box-shadow:4px 4px 0 var(--hot); }
.asset-button-x { background-position:76% 14%; border-color:var(--hot); }
.asset-button-archive { background-position:35% 48%; }
.asset-button[disabled],.asset-button[aria-disabled="true"] { opacity:.58; cursor:not-allowed; filter:grayscale(.45); }
.asset-button[disabled]:hover,.asset-button[aria-disabled="true"]:hover { transform:none; box-shadow:5px 5px 0 var(--acid); }
.hero-meta { position:absolute; z-index:2; bottom:28px; left:4.2vw; right:4.2vw; display:flex; justify-content:space-between; color:rgba(255,255,255,.72); font:700 9px/1 monospace; letter-spacing:.18em; }

.ticker { overflow:hidden; background:var(--acid); border-block:3px solid #000; transform:rotate(-.6deg) scale(1.01); position:relative; z-index:3; }
.ticker-track { display:flex; width:max-content; will-change:transform; animation:run 32s linear infinite; }
.ticker-group { display:flex; flex:none; align-items:center; padding:15px 0; font:900 18px/1 Arial Black,Arial,sans-serif; letter-spacing:.06em; white-space:nowrap; }
.ticker-group span { display:inline-flex; align-items:center; }
.ticker i { color:var(--hot); margin:0 20px; }
@keyframes run { to { transform:translateX(-50%); } }

.section { padding:120px 5vw; }
.section-kicker { color:#777; margin-bottom:52px; }
.section-kicker.light { color:var(--acid); }
.manifesto { background:var(--paper); position:relative; }
.manifesto::before { content:"✦"; position:absolute; right:4vw; top:50px; color:var(--hot); font-size:80px; transform:rotate(13deg); }
.manifesto-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr); gap:8vw; align-items:start; }
.manifesto h2,.archive h2 { margin:0; font:900 clamp(55px,8.3vw,126px)/.82 Arial Black,Arial,sans-serif; letter-spacing:-.085em; }
.manifesto h2 em { color:var(--hot); font-style:normal; -webkit-text-stroke:2px #000; text-shadow:5px 5px 0 #000; }
.manifesto-copy { padding-top:14px; font:500 17px/1.65 Arial,sans-serif; max-width:550px; }
.manifesto-copy .big-copy { margin-top:0; font:800 clamp(24px,2.6vw,37px)/1.13 Arial,sans-serif; letter-spacing:-.04em; }
.signature { margin-top:45px; padding:18px 0; border-block:1px solid #aaa; font:700 12px/1 monospace; letter-spacing:.1em; color:#555; }

.archive { background:#0b0b0c; color:white; }
.archive-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:70px; }
.archive-heading p { max-width:420px; color:#a8a8a8; font:600 14px/1.5 monospace; text-align:right; }
.gallery { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; align-items:start; }
.art-card { margin:0; grid-column:span 3; position:relative; background:#161616; transition:transform .25s ease; overflow:hidden; }
.art-card:nth-child(5n+2),.art-card:nth-child(5n+4) { margin-top:65px; }
.art-card:nth-child(7n) { grid-column:span 6; }
.art-card:hover { transform:rotate(-1.3deg) scale(1.025); z-index:2; }
.art-card img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; filter:saturate(.86) contrast(1.03); transition:.3s ease; }
.art-card:hover img { filter:saturate(1.15) contrast(1.08); }

@media (max-width:900px) {
  .nav-shell nav { display:none; }
  .hero { min-height:720px; }
  .hero-copy { width:86vw; padding-top:180px; }
  .hero-art { object-position:62% center; opacity:.82; }
  .manifesto-grid { grid-template-columns:1fr; }
  .gallery { grid-template-columns:repeat(6,1fr); }
  .art-card,.art-card:nth-child(7n) { grid-column:span 3; }
  .archive-heading { align-items:start; }
  .archive-heading p { text-align:left; }
}

@media (max-width:620px) {
  .nav-shell { height:70px; padding-inline:20px; }
  .hero { height:860px; }
  .hero-art { width:145%; left:-45%; object-position:70% center; }
  .hero-copy { width:auto; padding:150px 20px 90px; }
  .hero h1 { font-size:72px; line-height:.78; }
  .hero-lede br { display:none; }
  .asset-button { width:100%; }
  .ca-card { grid-template-columns:minmax(0,1fr); }
  .asset-button-copy { grid-column:1; grid-row:auto; width:100%; }
  .section { padding:85px 20px; }
  .manifesto-grid { gap:55px; }
  .manifesto h2,.archive h2 { font-size:52px; }
  .manifesto::before { font-size:48px; }
  .archive-heading { display:block; }
  .archive-heading p { margin-top:35px; }
  .gallery { grid-template-columns:1fr 1fr; gap:10px; }
  .art-card,.art-card:nth-child(7n) { grid-column:span 1; }
  .art-card:nth-child(5n+2),.art-card:nth-child(5n+4) { margin-top:32px; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .ticker-track { animation:none; } }
