@font-face{font-family:Geist;src:url('../fonts/Geist.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Geist Mono';src:url('../fonts/GeistMono.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Geist Pixel';src:url('../fonts/GeistPixel-Square.woff2') format('woff2');font-weight:400;font-display:swap}
:root {
  --bg:#131209; --panel:#181818; --text:#eeeede; --muted:#aaa897; --dim:#858273;
  --line:#3c3b2e; --accent:#d3e88c; --accent-ink:#202718; --orange:#eaa477;
  --s-0:0; --s-25:2px; --s-50:4px; --s-75:8px; --s-100:12px; --s-200:16px;
  --s-300:24px; --s-400:32px; --s-500:40px; --s-600:48px; --s-700:64px;
  --s-800:80px; --s-900:96px;
  --text-xs:.75rem; --text-sm:.875rem; --text-base:1rem; --text-lg:1.125rem;
  --text-xl:1.25rem; --text-2xl:1.5rem; --text-3xl:1.875rem; --text-4xl:2.25rem;
  --text-5xl:3rem; --text-6xl:3.75rem; --text-7xl:4.5rem; --text-8xl:6rem;
  --radius:0; --ease:cubic-bezier(.32,.72,0,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:128px}
body{margin:0;background:var(--bg);color:var(--text);font-family:Geist,sans-serif;font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
::selection{background:var(--accent);color:var(--bg)}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button,a,input,summary{-webkit-tap-highlight-color:transparent}
button{color:inherit;cursor:pointer;border-radius:var(--radius)}
button:disabled{cursor:wait}
button,a,summary{transition:background .7s var(--ease),color .7s var(--ease),transform .7s var(--ease),border-color .7s var(--ease)}
a:hover,.text-button:hover{color:var(--accent)}
button:active,a.button:active{transform:scale(.98)}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
p{margin:0;text-wrap:pretty}
h1,h2,h3{margin:0;font-weight:400;text-wrap:balance}
h1,h2,.pixel{font-family:'Geist Pixel',monospace}
h2{font-size:var(--text-6xl);line-height:1}
h3{font-size:var(--text-xl);line-height:1.4}
canvas{display:block;image-rendering:pixelated}
svg{width:20px;height:20px;fill:currentColor;flex-shrink:0}
button svg,a svg{vertical-align:middle}
.svg-defs{position:absolute;width:0;height:0;overflow:hidden}
.wrap{width:calc(100% - 96px);max-width:1280px;margin-inline:auto}
.section{padding-block:var(--s-900)}
.world-section{position:relative;isolation:isolate;overflow:hidden}
.world-section>.wrap{position:relative;z-index:1}
.world-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;user-select:none}
.world-strip{position:relative;isolation:isolate;height:256px;overflow:hidden}
.mono{font-family:'Geist Mono',monospace;font-size:var(--text-xs);line-height:1.333}
.muted{color:var(--muted)}
.eyebrow{font-family:'Geist Mono',monospace;font-size:var(--text-xs);line-height:1.333;letter-spacing:.02em;margin-bottom:var(--s-300);color:var(--muted)}
.status-pixel{display:inline-block;width:6px;height:6px;background:var(--accent);margin-right:var(--s-75);vertical-align:middle}
.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-400);background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);padding:var(--s-75) var(--s-100);min-height:44px;font-size:var(--text-base);font-weight:600;line-height:1.5;white-space:nowrap}
.button:hover{background:#e4f4b1;color:var(--accent-ink);border-color:#e4f4b1}
.button-small{font-size:var(--text-sm);line-height:1.43;min-height:40px;gap:var(--s-200)}
.text-button{display:inline-flex;align-items:center;gap:var(--s-200);padding:var(--s-75) 0;background:none;border:0;font-size:var(--text-sm);line-height:1.43;font-weight:500}
.text-button span{font-size:var(--text-xl)}
.skip-link{position:fixed;top:var(--s-300);left:var(--s-300);padding:var(--s-100);background:var(--accent);color:var(--bg);z-index:100;transform:translateY(-160px)}
.skip-link:focus{transform:none}

/* A stepped floating pill, with the same keyboard contract on both sizes. */
.site-header{height:0;position:relative;z-index:30}
.island{
  --nav-edge:#777665;
  --nav-surface:#1f1f1f;
  --island-shape:polygon(24px 0,calc(100% - 24px) 0,calc(100% - 24px) 4px,calc(100% - 12px) 4px,calc(100% - 12px) 8px,calc(100% - 4px) 8px,calc(100% - 4px) 16px,100% 16px,100% calc(100% - 16px),calc(100% - 4px) calc(100% - 16px),calc(100% - 4px) calc(100% - 8px),calc(100% - 12px) calc(100% - 8px),calc(100% - 12px) calc(100% - 4px),calc(100% - 24px) calc(100% - 4px),calc(100% - 24px) 100%,24px 100%,24px calc(100% - 4px),12px calc(100% - 4px),12px calc(100% - 8px),4px calc(100% - 8px),4px calc(100% - 16px),0 calc(100% - 16px),0 16px,4px 16px,4px 8px,12px 8px,12px 4px,24px 4px);
  position:fixed;top:var(--s-300);left:50%;transform:translateX(-50%);
  display:flex;align-items:center;gap:var(--s-400);width:max-content;
  max-width:calc(100% - 32px);padding:var(--s-100) var(--s-200);
  background:var(--nav-edge);border:0;clip-path:var(--island-shape);isolation:isolate;
}
.island::before{content:'';position:absolute;inset:1px;background:var(--nav-surface);clip-path:var(--island-shape);z-index:0}
.island>*{position:relative;z-index:1}
.island .brand-pixel:after{background:var(--nav-surface)}
.brand{display:flex;align-items:center;gap:var(--s-100);font-size:var(--text-xs);line-height:1.08;font-weight:600}
.brand-pixel{display:inline-block;position:relative;flex-shrink:0;width:24px;height:24px;background:var(--text);clip-path:polygon(8px 0,16px 0,16px 4px,20px 4px,20px 8px,24px 8px,24px 16px,20px 16px,20px 20px,16px 20px,16px 24px,8px 24px,8px 20px,4px 20px,4px 16px,0 16px,0 8px,4px 8px,4px 4px,8px 4px)}
.brand-pixel:after{content:'';position:absolute;top:4px;left:8px;width:8px;height:8px;background:var(--bg)}
.desktop-nav{display:flex;align-items:center;gap:var(--s-300);font-size:var(--text-sm)}
.desktop-nav a{padding:var(--s-75) 0}
.menu-toggle{display:none;width:32px;height:32px;padding:0;border:0;background:none;position:relative}
.menu-toggle span{position:absolute;left:4px;width:24px;height:2px;background:var(--text);transition:transform .7s var(--ease),top .7s var(--ease)}
.menu-toggle span:first-child{top:11px}.menu-toggle span:last-child{top:19px}
.menu-toggle[aria-expanded=true] span:first-child{top:15px;transform:rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{top:15px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:-1;background:#000c;backdrop-filter:blur(64px);padding:calc(var(--s-900) + var(--s-700)) var(--s-300) var(--s-600);display:flex;flex-direction:column;justify-content:space-between}
.mobile-menu nav{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-300)}
.mobile-menu nav a{font-family:'Geist Pixel',monospace;font-size:var(--text-3xl);line-height:1.2;animation:menu-in .8s var(--ease) both}
.mobile-menu nav a:nth-child(2){animation-delay:.1s}.mobile-menu nav a:nth-child(3){animation-delay:.15s}.mobile-menu nav a:nth-child(4){animation-delay:.2s}.mobile-menu nav a:nth-child(5){animation-delay:.25s}.mobile-menu nav a:nth-child(6){animation-delay:.3s}
@keyframes menu-in{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}

/* A framed portrait sits inside the district, leaving its skyline in view. */
.hero{min-height:880px;padding-top:calc(var(--s-800) + var(--s-600));padding-bottom:calc(var(--s-900) + var(--s-700))}
.hero-inner{display:grid;grid-template-columns:minmax(0,1fr) 450px;gap:var(--s-700);align-items:start}
.hero-inner>*{min-width:0}
.hero-copy{max-width:560px;margin-top:var(--s-600)}
.hero h1{font-size:var(--text-8xl);line-height:1;letter-spacing:-.05em;max-width:680px;margin-bottom:var(--s-300);background:linear-gradient(90deg,#fff,#9b9b9b);background-clip:text;-webkit-text-fill-color:transparent}
.hero-description{color:#d2cbd4;font-size:var(--text-lg);line-height:1.556;max-width:680px;margin-bottom:var(--s-400)}
.hero-proof{margin-top:var(--s-300);font-size:var(--text-xs);line-height:1.333;color:var(--muted);display:flex;gap:var(--s-75);align-items:center}
.pearl-icon{display:inline-block;flex-shrink:0;width:16px;height:16px;background:var(--text);box-shadow:inset -4px -4px 0 #a9ac8c;clip-path:polygon(4px 0,12px 0,12px 4px,16px 4px,16px 12px,12px 12px,12px 16px,4px 16px,4px 12px,0 12px,0 4px,4px 4px)}
.hero-art{width:450px;max-width:100%;border:1px solid var(--line);background:var(--panel)}
.portrait-stage{padding:var(--s-200);color:var(--stage-ink,#131209);background:#7bb0a1}
.portrait-heading{display:flex;justify-content:space-between;gap:var(--s-100);margin-bottom:var(--s-200)}
.portrait-heading .status-pixel{background:currentColor}
#featured-agent{width:416px;height:416px;margin-inline:auto}
.featured-data{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s-75) var(--s-300);padding:var(--s-200) var(--s-300);background:var(--panel)}
.featured-data h2{grid-column:1;font-family:'Geist Mono',monospace;font-size:var(--text-lg);line-height:1.333;letter-spacing:-.025em}
.featured-data dl{grid-column:1;margin:0;display:grid;grid-auto-flow:column;grid-template-rows:16px auto;justify-content:start;column-gap:var(--s-300);row-gap:var(--s-50)}
.featured-data dt{color:var(--dim)}.featured-data dd{margin:0;white-space:nowrap}
.palette{grid-column:2;grid-row:1/3;align-self:center;display:grid;grid-template-columns:repeat(7,8px);gap:var(--s-50)}
.palette span{display:block;width:8px;height:8px}
.portrait-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--s-200);padding:var(--s-100) var(--s-200);color:var(--dim);background:var(--bg)}
.portrait-footer button{display:flex;align-items:center;gap:var(--s-75);background:none;padding:0;border:0;font-size:inherit;color:var(--muted)}
.portrait-footer button:hover{color:var(--accent)}.portrait-footer svg{width:16px;height:16px}
.fact-strip{display:flex;align-items:center;justify-content:space-between;padding:var(--s-200) var(--s-300);border:1px solid var(--line);color:var(--muted);background:var(--bg)}
.fact-strip span:before{content:'+';color:var(--accent);margin-right:var(--s-100)}

.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s-600);margin-bottom:var(--s-500)}
.section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:384px;color:var(--muted);font-size:var(--text-base);line-height:1.5}
.collection{padding-bottom:var(--s-400)}
.collection-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--s-300);margin-bottom:var(--s-300)}
.filter-group{display:flex;gap:var(--s-75);flex-wrap:wrap}
.filter-group button{background:none;border:1px solid var(--line);padding:var(--s-75) var(--s-100);font-size:var(--text-xs);line-height:1.333;color:var(--muted)}
.filter-group button:hover{border-color:var(--muted);color:var(--text)}
.filter-group button[aria-pressed=true]{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}
.agent-wall{display:grid;grid-template-columns:repeat(auto-fill,146px);justify-content:space-between;gap:var(--s-200) var(--s-75)}
.agent-card{position:relative;border:1px solid var(--line);width:146px;background:var(--bg);padding:0;text-align:left;overflow:visible}
.agent-card canvas{width:144px;height:144px}
.agent-id{display:flex;justify-content:space-between;align-items:center;padding:var(--s-75);font-family:'Geist Mono',monospace;font-size:var(--text-xs);line-height:1.333;color:var(--muted)}
.agent-id:after{content:'↗';color:var(--dim)}
.agent-card:hover,.agent-card:focus-visible,.agent-card[aria-expanded=true]{border-color:var(--accent);z-index:3}
.agent-card:hover .agent-id,.agent-card:focus-visible .agent-id{color:var(--accent)}
.agent-tooltip{position:absolute;top:calc(100% - 32px);left:-1px;right:-1px;z-index:3;display:none;background:var(--bg);border:1px solid var(--accent);padding:var(--s-75);font-family:'Geist Mono',monospace;font-size:var(--text-xs);line-height:1.333;color:var(--text);pointer-events:none}
.agent-tooltip>span{display:block;margin-top:var(--s-50);color:var(--muted)}
.agent-card:hover .agent-tooltip,.agent-card:focus-visible .agent-tooltip,.agent-card[aria-expanded=true] .agent-tooltip{display:block}
.gallery-bottom{display:flex;justify-content:space-between;gap:var(--s-300);align-items:center;margin-top:var(--s-300)}
.empty-state{padding:var(--s-600);grid-column:1/-1;color:var(--muted);border:1px solid var(--line)}

.tagline-section{min-height:560px;padding:var(--s-800) 0 calc(var(--s-900) + var(--s-700))}
.tagline{max-width:680px;font-size:var(--text-6xl);line-height:1;margin-bottom:var(--s-400)}
.tagline .word{color:var(--text);opacity:.28;transition:opacity .8s var(--ease)}
.tagline .word.active{opacity:1}
.tagline-copy>p:last-of-type{color:var(--muted);font-size:var(--text-lg);line-height:1.556}
.tagline-mark{display:flex;align-items:center;gap:var(--s-200);width:max-content;max-width:100%;margin-top:var(--s-300);padding:var(--s-75) var(--s-100);border:1px solid var(--line);background:var(--bg)}
.tagline-mark canvas{width:48px;height:48px;flex-shrink:0}
.tagline-mark span{color:var(--muted)}

.onchain{display:grid;grid-template-columns:minmax(0,1fr) 626px;gap:var(--s-700);align-items:center;padding-top:var(--s-700)}
.onchain-copy>p:not(.eyebrow){color:var(--muted);margin-top:var(--s-300);max-width:440px}
.benefit{display:flex;gap:var(--s-200);margin-top:var(--s-400);max-width:440px}
.benefit>.mono{color:var(--accent);padding-top:var(--s-50)}
.benefit h3{font-size:var(--text-base);line-height:1.5;font-weight:500;margin-bottom:var(--s-75)}
.benefit p{color:var(--muted);font-size:var(--text-sm);line-height:1.43}
.composition-panel{border:1px solid var(--line);padding:var(--s-300);background:var(--bg)}
.panel-heading{display:flex;justify-content:space-between;margin-bottom:var(--s-300);color:var(--muted)}
.panel-heading span:last-child{color:var(--accent)}
.layer-stack{display:flex;justify-content:space-between;gap:var(--s-75);margin-bottom:var(--s-300)}
.layer-button{border:1px solid var(--line);padding:0;background:var(--bg);width:98px;color:var(--muted);text-align:left}
.layer-button canvas{width:96px;height:96px}
.layer-button>span{display:block;padding:var(--s-75);font-family:'Geist Mono',monospace;font-size:var(--text-xs);line-height:1.333}
.layer-button:hover,.layer-button[aria-pressed=true]{border-color:var(--accent);color:var(--text)}
.composed-result{display:grid;grid-template-columns:240px 1fr;gap:var(--s-300);align-items:center;margin-top:var(--s-400)}
.composed-result .eyebrow{display:block;margin-bottom:var(--s-200)}
.composed-result h3{font-size:var(--text-3xl);line-height:1.2;margin-bottom:var(--s-200)}
.composed-result p{color:var(--muted);max-width:192px}
.composed-result .text-button{margin-top:var(--s-300)}
.ancestry{margin-top:var(--s-300);padding:var(--s-200) var(--s-100);border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:var(--s-100);color:var(--muted)}
.ancestry>span:nth-child(2){color:var(--accent)}
.panel-note{margin-top:var(--s-200);color:var(--dim)}

.mint-content{position:relative;z-index:1;margin-top:calc(-1 * var(--s-400))}
.mint-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-200)}
.step{border:1px solid var(--line);padding:var(--s-400);display:flex;align-items:flex-start;flex-direction:column;background:var(--panel)}
.step-number{font-size:var(--text-6xl);line-height:1;color:var(--accent);margin-bottom:var(--s-400)}
.step-label{color:var(--dim);margin-bottom:var(--s-100)}
.step h3{font-size:var(--text-2xl);line-height:1.333;margin-bottom:var(--s-200)}
.step p{color:var(--muted);font-size:var(--text-sm);line-height:1.43;margin-bottom:var(--s-300)}
.step>.text-button,.step>.mono:last-child{margin-top:auto}
.step>.mono:last-child{padding-top:var(--s-75);text-wrap:balance}
.miner-note{margin-top:var(--s-200);padding:var(--s-300) var(--s-400);border:1px solid var(--line);display:flex;gap:var(--s-300);align-items:center;background:var(--panel)}
.miner-note>.pearl-icon{width:24px;height:24px}
.miner-note h3{font-size:var(--text-base);line-height:1.5;margin-bottom:var(--s-50)}
.miner-note p{font-size:var(--text-sm);line-height:1.43;color:var(--muted)}
.miner-note>.mono{margin-left:auto;color:var(--accent);white-space:nowrap}

.trade-trust{margin-top:var(--s-200);font-size:var(--text-xs);line-height:1.333;color:var(--accent)}
.orderbook{position:relative;z-index:1;margin-top:calc(-1 * var(--s-400));border:1px solid var(--line);padding:var(--s-300);background:var(--panel)}
.book-top{display:flex;justify-content:space-between;align-items:center;gap:var(--s-300);margin-bottom:var(--s-400)}
.book-brand{display:flex;align-items:center;gap:var(--s-100);font-size:var(--text-sm);font-weight:500}
.book-brand>svg{width:32px;height:32px;color:var(--accent)}
.book-brand .mono{display:block;margin-top:var(--s-50);font-weight:400}
.preview-label{padding:var(--s-75) var(--s-100);border:1px solid var(--line);color:var(--accent)}
.book-stats{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:end;gap:var(--s-300);margin-bottom:var(--s-300)}
.book-stats>div>.mono{display:block;margin-bottom:var(--s-75)}
.book-stats strong{display:block;font-weight:400;font-size:var(--text-3xl);line-height:1.2}
.book-stats small{font-family:'Geist Mono',monospace;font-size:var(--text-xs);color:var(--muted)}
.price-mask{font-family:'Geist Pixel',monospace;letter-spacing:.08em;font-size:var(--text-lg);line-height:1.556;opacity:.6}
.book-stats .price-mask{font-size:var(--text-3xl);line-height:1.2}
.book-tablist{display:flex;gap:var(--s-75)}
.book-tablist button{background:none;border:1px solid var(--line);font-size:var(--text-xs);line-height:1.333;padding:var(--s-75) var(--s-100);color:var(--muted)}
.book-tablist button[aria-selected=true]{border-color:var(--accent);color:var(--accent)}
.book-tablist button:hover{color:var(--text)}
.book-view{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-300)}
.ladder{border:1px solid var(--line);padding:var(--s-100)}
.ladder-title{display:flex;justify-content:space-between;color:var(--muted);padding:var(--s-75);margin-bottom:var(--s-75)}
.ask-dot,.bid-dot{display:inline-block;width:4px;height:4px;background:var(--orange);vertical-align:middle;margin-left:var(--s-50)}
.bid-dot{background:var(--accent)}
.book-row{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;gap:var(--s-200);padding:var(--s-100) var(--s-75);margin-bottom:var(--s-50);font-family:'Geist Mono',monospace;font-size:var(--text-sm);line-height:1.43}
.book-row:before{content:'';position:absolute;inset:0 0 0 auto;width:var(--depth);background:#eaa47712;z-index:-1}
.bids .book-row:before{background:#d3e88c12}
.book-row>.price-mask{color:var(--orange)}.bids .book-row>.price-mask{color:var(--accent)}
.book-row small{font-size:var(--text-xs);color:var(--dim);margin-left:var(--s-200)}
.book-caption{display:flex;align-items:flex-start;gap:var(--s-200);padding:var(--s-300) var(--s-75);font-size:var(--text-sm);line-height:1.43;color:var(--muted)}
.book-caption .status-pixel{margin-top:var(--s-75)}
.activity-view{min-height:384px;border:1px solid var(--line);padding:var(--s-100)}
.activity-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--s-200);padding:var(--s-300) var(--s-100);align-items:center}
.activity-row:nth-child(odd){background:#ffffff04}
.activity-row span:last-child{color:var(--dim);text-align:right}
.bid-text{color:var(--accent)}.ask-text{color:var(--orange)}
.activity-view>.panel-note{padding:var(--s-100)}

.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--s-900)}
.faq>div>p:last-child{color:var(--muted);margin-top:var(--s-300)}
.faq-list{display:flex;flex-direction:column;gap:var(--s-75)}
.faq-list details{border:1px solid var(--line);padding:var(--s-200) var(--s-300)}
.faq-list details[open]{border-color:#71725a}
.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--s-300);font-size:var(--text-base);line-height:1.5}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover{color:var(--accent)}
.faq-list summary>span{color:var(--dim);font-size:var(--text-xl);line-height:1.4;transition:transform .7s var(--ease)}
.faq-list details[open] summary>span{transform:rotate(45deg)}
.faq-list details p{margin-top:var(--s-200);padding-right:var(--s-300);color:var(--muted);font-size:var(--text-sm);line-height:1.43}
.reserve{min-height:880px;padding-bottom:calc(var(--s-900) + var(--s-900))}
.reserve-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s-700);align-items:center}
.reserve-copy{border:1px solid var(--line);padding:var(--s-400);background:var(--bg)}
.reserve-copy h2{font-size:var(--text-7xl);line-height:1;margin-bottom:var(--s-300)}
.reserve-copy>p:not(.eyebrow){color:var(--muted);max-width:480px}
.reserve-art{width:max-content;max-width:100%;justify-self:end;border:1px solid var(--line);padding:var(--s-200);background:var(--panel)}
#reserve-agent{width:416px;height:416px;margin-inline:auto}
.reserve-art>span{display:block;color:var(--dim);margin-top:var(--s-200);margin-inline:auto;text-align:center}
form{margin-top:var(--s-400);max-width:640px}
form>label{display:block;font-size:var(--text-xs);line-height:1.333;color:var(--muted);margin-bottom:var(--s-100)}
.form-row{display:flex;gap:var(--s-75)}
input{border:1px solid #62634d;background:var(--panel);color:var(--text);padding:var(--s-100);border-radius:0;width:100%;min-width:0;font-size:var(--text-base);line-height:1.5;outline:none}
input::placeholder{color:var(--dim)}input:focus{border-color:var(--accent)}input[aria-invalid=true]{border-color:var(--orange)}
.form-row .button{gap:var(--s-200)}
.form-message{min-height:32px;margin-top:var(--s-100);color:var(--dim);font-size:var(--text-xs);line-height:1.333}
.form-message.error{color:var(--orange)}.form-message.success{color:var(--accent)}
.button.loading{position:relative;color:var(--accent-ink)}.button.loading .submit-label{opacity:.35}
.button.loading:after{content:'';width:48px;height:4px;position:absolute;bottom:4px;left:12px;background:var(--accent-ink);animation:loading-bar 1s var(--ease) infinite alternate}
@keyframes loading-bar{to{width:calc(100% - 24px)}}

.footer{padding-top:var(--s-600);padding-bottom:var(--s-400);position:relative}
.footer:before{content:'';position:absolute;inset:0 0 auto;height:1px;background:var(--line)}
.footer-top{display:flex;justify-content:space-between;gap:var(--s-600);margin-bottom:var(--s-800)}
.footer-wordmark{font-size:var(--text-6xl);line-height:1;letter-spacing:-.04em;position:relative}
.footer-wordmark .brand-pixel{position:absolute;left:100%;top:var(--s-75);margin-left:var(--s-200);background:var(--accent)}
.footer-links{display:flex;gap:var(--s-900)}
.footer-links>div{display:flex;flex-direction:column;gap:var(--s-100);font-size:var(--text-sm);line-height:1.43}
.footer-links .mono{margin-bottom:var(--s-100)}
.footer-links svg{width:12px;height:12px;margin-left:var(--s-75)}
.footer-links a[aria-current=page]{color:var(--accent)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--s-400)}
.footer-bottom>a{color:var(--muted)}
.legal{display:flex;gap:var(--s-400);color:var(--dim);font-size:var(--text-xs);line-height:1.333}
.legal>span{display:flex;flex-direction:column;gap:var(--s-50);cursor:not-allowed}
.legal small{font-size:var(--text-xs);color:var(--dim)}
.js .reveal{opacity:0;transform:translateY(64px);filter:blur(12px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
.js .reveal.visible{opacity:1;transform:none;filter:none}
[hidden]{display:none!important}

@media(max-width:1279px) {
  h2{font-size:var(--text-5xl)}
  .hero-inner{gap:var(--s-400)}.hero h1{font-size:var(--text-7xl)}
  .featured-data{padding:var(--s-200)}
  .onchain{grid-template-columns:minmax(0,1fr) 562px;gap:var(--s-400)}
  .composition-panel{padding:var(--s-200)}.layer-stack{gap:var(--s-50)}
  .composed-result{gap:var(--s-200)}
  .reserve-inner{gap:var(--s-600)}.reserve-copy h2{font-size:var(--text-6xl)}
  .form-row{flex-wrap:wrap}.form-row input{flex-basis:100%}
  .book-stats{grid-template-columns:repeat(3,1fr)}.book-tablist{grid-column:1/-1}
  .step{padding:var(--s-300)}.faq{gap:var(--s-600)}
}
@media(max-width:1023px) {
  .wrap{width:calc(100% - 64px)}
  .desktop-nav{gap:var(--s-200)}.island{gap:var(--s-300)}
  .hero{padding-top:calc(var(--s-900) + var(--s-600));padding-bottom:var(--s-900)}
  .hero-inner{grid-template-columns:minmax(0,1fr);gap:calc(var(--s-900) + var(--s-400))}
  .world-canvas-city{height:960px;bottom:auto}
  .hero-copy{max-width:680px;margin-top:0}.hero h1{font-size:var(--text-8xl)}
  .hero-art{justify-self:end}
  .fact-strip{flex-wrap:wrap;gap:var(--s-200)}.fact-strip span{width:calc(50% - 8px)}
  .collection-tools{align-items:flex-start;flex-direction:column}
  .onchain{grid-template-columns:minmax(0,1fr);gap:var(--s-500)}
  .onchain-copy h2 br:first-child{display:none}.onchain-copy>p:not(.eyebrow){max-width:560px}
  .onchain-copy .benefit{display:inline-flex;max-width:calc(50% - 16px);vertical-align:top;margin-right:var(--s-200)}
  .onchain-copy .benefit:last-child{margin-right:0}
  .composition-panel{padding:var(--s-300);max-width:626px;justify-self:end;width:100%}
  .layer-stack{gap:var(--s-75)}.composed-result{gap:var(--s-300)}
  .mint-steps{gap:var(--s-75)}.step{padding:var(--s-200)}.step h3{font-size:var(--text-xl)}
  .step .text-button{font-size:var(--text-xs);gap:var(--s-75)}
  .miner-note{padding:var(--s-300);flex-wrap:wrap}.miner-note>.mono{margin-left:var(--s-600)}
  .tagline{max-width:560px;font-size:var(--text-5xl)}
  .tagline-mark span{max-width:192px}
  .faq{grid-template-columns:1fr 1.5fr;gap:var(--s-400)}
  .reserve-inner{grid-template-columns:minmax(0,1fr) 274px;gap:var(--s-400)}
  .reserve-art{padding:var(--s-75)}.reserve-art>span{max-width:240px}
  #reserve-agent{width:208px;height:208px}
  .reserve-copy h2{font-size:var(--text-5xl)}
  .footer-links{gap:var(--s-500)}.footer-wordmark{font-size:var(--text-5xl)}
  .footer-bottom{flex-wrap:wrap}.legal{order:3;flex-basis:100%}
  .section-heading{gap:var(--s-400)}
  .section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:288px}
  .book-row small{margin-left:var(--s-75)}
}
@media(max-width:699px) {
  html{scroll-padding-top:112px}
  .wrap{width:calc(100% - 48px)}.section{padding-block:var(--s-700)}
  .island{top:var(--s-200);gap:var(--s-200);padding:var(--s-100) var(--s-200);max-width:calc(100% - 32px);width:358px;justify-content:space-between}
  .brand{gap:var(--s-75)}.desktop-nav{display:none}
  .island .button{font-size:var(--text-xs);gap:var(--s-75);padding:var(--s-75);min-height:36px}
  .island .button svg{width:12px;height:12px}.menu-toggle{display:block;flex-shrink:0}
  .world-strip{height:224px}
  .hero{padding-top:calc(var(--s-900) + var(--s-400));padding-bottom:var(--s-900)}
  .hero-inner{gap:calc(var(--s-900) + var(--s-900))}
  .world-canvas-city{height:800px}
  .hero .eyebrow{margin-bottom:var(--s-300);letter-spacing:0}
  .hero h1{font-size:var(--text-7xl);line-height:1;letter-spacing:-.05em;margin-bottom:var(--s-300)}
  .hero-description{font-size:var(--text-base);line-height:1.5;margin-bottom:var(--s-300);max-width:336px}
  .desktop-break{display:none}.hero-proof{margin-top:var(--s-200)}
  .hero-art{width:314px;max-width:calc(100vw - 32px);justify-self:center}
  .portrait-stage{padding:var(--s-200) 0 var(--s-300)}
  .portrait-heading{padding-inline:var(--s-100);gap:var(--s-75);margin-bottom:var(--s-200)}
  #featured-agent{width:312px;height:312px}
  .featured-data{gap:var(--s-75) var(--s-100);padding:var(--s-200)}
  .featured-data h2{font-size:var(--text-base);line-height:1.5}
  .featured-data dl{column-gap:var(--s-300)}
  .portrait-footer{padding:var(--s-100);gap:var(--s-100)}
  .portrait-footer>span{max-width:192px}.portrait-footer button{white-space:nowrap}.portrait-footer svg{width:12px;height:12px}
  .fact-strip{gap:var(--s-100) var(--s-75);padding:var(--s-200) var(--s-100)}
  .fact-strip span{width:calc(50% - 4px);text-wrap:balance}.fact-strip span:before{margin-right:var(--s-75)}
  h2{font-size:var(--text-4xl);line-height:1.111}
  .section-heading{display:block;margin-bottom:var(--s-300)}
  .section-heading .eyebrow{margin-bottom:var(--s-200)}
  .section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:100%;margin-top:var(--s-300);font-size:var(--text-sm);line-height:1.43}
  .collection{padding-bottom:var(--s-400)}.collection h2{font-size:var(--text-3xl);line-height:1.2}
  .collection-tools{gap:var(--s-200);margin-bottom:var(--s-200)}
  .filter-group button{padding:var(--s-75);min-height:32px}
  .agent-wall{grid-template-columns:repeat(auto-fill,98px);gap:var(--s-100) var(--s-50)}
  .agent-card{width:98px}.agent-card canvas{width:96px;height:96px}
  .agent-id{padding:var(--s-75)}
  .agent-tooltip{left:-1px;right:auto;width:146px}.agent-card:nth-child(3n) .agent-tooltip{left:auto;right:-1px}
  .gallery-bottom{align-items:flex-start;gap:var(--s-200);margin-top:var(--s-200)}
  .gallery-bottom>.mono{max-width:176px}.gallery-bottom .text-button{font-size:var(--text-xs);white-space:nowrap;gap:var(--s-75);padding-top:0}
  .tagline-section{min-height:640px;padding-top:var(--s-700);padding-bottom:calc(var(--s-900) + var(--s-900))}
  .tagline{font-size:var(--text-4xl);line-height:1.111;margin-bottom:var(--s-300);max-width:336px;letter-spacing:-.03em}
  .tagline-copy>.eyebrow{margin-bottom:var(--s-200)}
  .tagline-copy>p:last-of-type{font-size:var(--text-sm);line-height:1.43}
  .tagline-mark{gap:var(--s-200)}
  .tagline-mark span{max-width:144px}
  .onchain{gap:var(--s-400);padding-top:var(--s-400)}
  .onchain-copy h2{font-size:var(--text-5xl);line-height:1}.onchain-copy h2 br:first-child{display:block}
  .onchain-copy>p:not(.eyebrow){font-size:var(--text-sm);line-height:1.43}
  .onchain-copy .benefit{display:flex;max-width:100%;margin-right:0;margin-top:var(--s-300)}
  .benefit h3{font-size:var(--text-sm);line-height:1.43}
  .composition-panel{padding:var(--s-100);width:100%;justify-self:stretch}
  .panel-heading{margin-bottom:var(--s-200)}
  .layer-stack{gap:var(--s-50);margin-bottom:var(--s-200)}
  .layer-button{width:50px}.layer-button canvas{width:48px;height:48px}.layer-button>span{padding:var(--s-50)}
  .composed-result{display:block;margin-top:var(--s-300)}.composed-result>canvas{margin:auto}
  .composed-result>div{padding:var(--s-200) var(--s-75) 0}
  .composed-result .eyebrow{margin-bottom:var(--s-75)}
  .composed-result h3{font-size:var(--text-2xl);line-height:1.333;margin-bottom:var(--s-75)}
  .composed-result p{max-width:none}.composed-result .text-button{margin-top:var(--s-100)}
  .ancestry{padding:var(--s-100) var(--s-75);gap:var(--s-75);flex-wrap:wrap}.ancestry .status-pixel{display:none}
  .mint-content{margin-top:calc(-1 * var(--s-300))}
  .mint-steps{grid-template-columns:1fr;gap:var(--s-100)}
  .step{padding:var(--s-300);display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:var(--s-300)}
  .step-number{grid-row:1/5;font-size:var(--text-4xl);line-height:1.111;margin-bottom:0}
  .step-label{margin-bottom:var(--s-100)}.step h3{font-size:var(--text-xl);line-height:1.4;margin-bottom:var(--s-100)}
  .step p{margin-bottom:var(--s-200)}.step>.text-button,.step>.mono:last-child{font-size:var(--text-xs);grid-column:2}
  .miner-note{padding:var(--s-300);gap:var(--s-100);align-items:flex-start}
  .miner-note>.pearl-icon{margin-top:var(--s-50);width:16px;height:16px}
  .miner-note>div{flex:1}.miner-note h3{font-size:var(--text-sm);line-height:1.43}
  .miner-note p{font-size:var(--text-xs);line-height:1.333;margin-top:var(--s-75)}
  .miner-note>.mono{margin-left:var(--s-300);flex-basis:100%}
  .orderbook{padding:var(--s-100);margin-top:calc(-1 * var(--s-300))}
  .book-top{align-items:flex-start;flex-direction:column;gap:var(--s-200);margin-bottom:var(--s-300)}
  .book-stats{grid-template-columns:1fr 1fr;gap:var(--s-200);margin-bottom:var(--s-200)}
  .book-stats strong,.book-stats .price-mask{font-size:var(--text-2xl);line-height:1.333}
  .book-stats>div:nth-child(3){display:none}.book-tablist{margin-top:var(--s-75);grid-column:1/-1}
  .book-view{grid-template-columns:minmax(0,1fr);gap:var(--s-100)}
  .ladder{padding:var(--s-75)}.book-row{font-size:var(--text-xs);line-height:1.333;padding:var(--s-75)}
  .book-row small{margin-left:var(--s-100)}.book-row .price-mask{font-size:var(--text-base);line-height:1.5}
  .book-caption{padding:var(--s-200) var(--s-75);font-size:var(--text-xs);line-height:1.333}
  .activity-row{grid-template-columns:1fr 1fr;gap:var(--s-75);padding:var(--s-200) var(--s-75)}
  .activity-row span:last-child{text-align:left}
  .faq{display:block}.faq>div>p:last-child{display:none}
  .faq-list{margin-top:var(--s-400)}.faq-list details{padding:var(--s-200)}
  .faq-list summary{font-size:var(--text-sm);line-height:1.43;gap:var(--s-200)}.faq-list details p{padding-right:0}
  .reserve{padding-bottom:calc(var(--s-900) + var(--s-700))}
  .reserve-inner{grid-template-columns:minmax(0,1fr);gap:var(--s-900)}
  .reserve-copy{padding:var(--s-300)}
  .reserve-copy h2{font-size:var(--text-4xl);line-height:1.111}
  .reserve-copy>p:not(.eyebrow){font-size:var(--text-sm);line-height:1.43}
  form{margin-top:var(--s-300)}.form-row{flex-direction:column;gap:var(--s-100)}
  .form-row input{min-height:48px;flex-basis:auto}.form-row .button{min-height:48px;justify-content:space-between}
  .reserve-art{display:block;justify-self:center}
  #reserve-agent{width:312px;height:312px}
  .footer{padding-top:var(--s-400);padding-bottom:var(--s-400)}
  .footer-top{display:block;margin-bottom:var(--s-400)}.footer-wordmark{display:inline-block;font-size:var(--text-5xl);line-height:1}
  .footer-links{margin-top:var(--s-500);gap:var(--s-500)}.footer-links>div{font-size:var(--text-xs);line-height:1.333}
  .footer-bottom{gap:var(--s-300)}.footer-bottom>.mono:first-child{max-width:176px}
}
@media(prefers-reduced-motion:reduce) {
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none;filter:none}
  .tagline .word{opacity:1}
}
