#homePage {
    background: #ece9d8;
    color: #0a0a0a;
    font-family: ui-sans-serif, "Inter", system-ui, -apple-system, sans-serif;
    overflow-x: hidden;
    position: relative;
    min-height: 100vh;
}
#homePage * { box-sizing: border-box; }

.nx-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}
.nx-bg .nx-mark {
    position: absolute;
    color: #ffffff;
    opacity: 0.85;
    user-select: none;
    line-height: 1;
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-weight: 400;
}
.nx-bg .nx-mark.lg { font-size: 460px; }
.nx-bg .nx-mark.md { font-size: 280px; }
.nx-bg .nx-mark.sm { font-size: 180px; }

.nx-mark.m1 { top: -120px; left: -100px; transform: rotate(-12deg); opacity: 0.75; }
.nx-mark.m2 { top: 4%; right: -80px; transform: rotate(18deg); opacity: 0.55; }
.nx-mark.m3 { bottom: 10%; left: -60px; transform: rotate(-8deg); opacity: 0.50; }
.nx-mark.m4 { bottom: -120px; right: -120px; transform: rotate(15deg); opacity: 0.65; }
.nx-mark.m5 { top: 38%; left: 6%; transform: rotate(-22deg); opacity: 0.30; }
.nx-mark.m6 { top: 28%; right: 8%; transform: rotate(8deg); opacity: 0.30; }
.nx-mark.m7 { bottom: 18%; right: 18%; transform: rotate(-14deg); opacity: 0.30; }

.nx-shell {
    position: relative;
    z-index: 1;
}

.nx-hero {
    padding: 100px 32px 80px;
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}

.nx-pill {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 10px 24px;
    border: 1px solid rgba(10, 10, 10, 0.20);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(6px);
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.78em;
    letter-spacing: 0.20em;
    color: #0a0a0a;
    margin-bottom: 56px;
    text-transform: uppercase;
}
.nx-pill .dot {
    width: 7px;
    height: 7px;
    background: #0d5959;
    border-radius: 50%;
}
.nx-pill .sep { color: rgba(10, 10, 10, 0.25); }
.nx-pill .accent { color: #0d5959; }

.nx-headline {
    font-size: clamp(3em, 10vw, 8em);
    line-height: 0.96;
    letter-spacing: -0.045em;
    font-weight: 800;
    margin: 0 0 48px;
    color: #0a0a0a;
}
.nx-headline .accent {
    color: #1a6c6c;
    background: linear-gradient(180deg, #1a7878, #0d4b4b);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.nx-lede {
    font-size: clamp(1.1em, 1.6vw, 1.3em);
    line-height: 1.5;
    color: #2a2a2a;
    max-width: 780px;
    margin: 0 auto 48px;
    font-weight: 400;
}
.nx-lede strong { color: #0a0a0a; font-weight: 600; }

.nx-cta-row {
    display: inline-flex;
    gap: 0;
    flex-wrap: wrap;
    justify-content: center;
}
.nx-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 22px 42px;
    border-radius: 0;
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.86em;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background 0.16s, color 0.16s, border-color 0.16s;
}
.nx-cta-primary {
    background: #0a0a0a;
    color: #ece9d8;
    border: 1px solid #0a0a0a;
}
.nx-cta-primary:hover { background: #1a6c6c; border-color: #1a6c6c; }
.nx-cta-ghost {
    background: transparent;
    color: #0a0a0a;
    border: 1px solid #0a0a0a;
    border-left: none;
}
.nx-cta-ghost:hover { background: #0a0a0a; color: #ece9d8; }
.nx-cta-row .nx-cta:first-child { border-right: none; }

.nx-divider {
    border: none;
    border-top: 2px solid #0a0a0a;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    opacity: 0.9;
}

.nx-section {
    position: relative;
    padding: 100px 32px;
    max-width: 1280px;
    margin: 0 auto;
}

.nx-section-head {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) minmax(0, 3fr);
    gap: 64px;
    align-items: baseline;
    margin-bottom: 64px;
}
.nx-section-eyebrow {
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.78em;
    letter-spacing: 0.20em;
    text-transform: uppercase;
    color: #1a6c6c;
}
.nx-section-eyebrow::before { content: "↳ "; opacity: 0.6; }
.nx-section-head h2 {
    font-size: clamp(1.8em, 3.4vw, 2.6em);
    line-height: 1.05;
    letter-spacing: -0.025em;
    font-weight: 800;
    margin: 0;
    color: #0a0a0a;
    max-width: 720px;
}
.nx-section-head h2 .accent {
    background: linear-gradient(180deg, #1a7878, #0d4b4b);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.nx-list { display: flex; flex-direction: column; gap: 0; }
.nx-list-row {
    display: grid;
    grid-template-columns: 80px minmax(220px, 1.4fr) minmax(0, 2fr) auto;
    gap: 32px;
    align-items: baseline;
    padding: 28px 0;
    border-top: 1px solid rgba(10, 10, 10, 0.15);
    text-decoration: none;
    color: inherit;
    transition: background 0.14s;
    margin: 0 -16px;
    padding-left: 16px;
    padding-right: 16px;
}
.nx-list-row:hover { background: rgba(255, 255, 255, 0.45); }
.nx-list-row:last-child { border-bottom: 1px solid rgba(10, 10, 10, 0.15); }

.nx-list-num {
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.86em;
    color: #1a6c6c;
    letter-spacing: 0.10em;
}
.nx-list-title {
    font-size: 1.45em;
    font-weight: 700;
    color: #0a0a0a;
    letter-spacing: -0.015em;
    line-height: 1.15;
}
.nx-list-desc {
    color: #44494e;
    font-size: 0.98em;
    line-height: 1.5;
}
.nx-list-meta {
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.78em;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    text-align: right;
    color: #1a6c6c;
    white-space: nowrap;
}
.nx-list-meta.live { color: #1a6c6c; }
.nx-list-meta.soon { color: #8a6a14; }

.nx-stat-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0;
    border-top: 2px solid #0a0a0a;
    border-bottom: 2px solid #0a0a0a;
    margin-top: 64px;
}
.nx-stat-cell {
    padding: 28px 24px;
    border-right: 1px solid rgba(10, 10, 10, 0.15);
}
.nx-stat-cell:last-child { border-right: none; }
.nx-stat-label {
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.74em;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #1a6c6c;
    margin-bottom: 10px;
}
.nx-stat-value {
    font-size: 1.6em;
    font-weight: 700;
    color: #0a0a0a;
    letter-spacing: -0.015em;
    line-height: 1.1;
}
.nx-stat-sub {
    color: #44494e;
    font-size: 0.84em;
    margin-top: 4px;
}

.nx-quote {
    padding: 100px 32px;
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}
.nx-quote h2 {
    font-size: clamp(1.8em, 4vw, 3em);
    line-height: 1.1;
    letter-spacing: -0.025em;
    font-weight: 800;
    color: #0a0a0a;
    margin: 0 0 24px;
}
.nx-quote h2 .accent {
    background: linear-gradient(180deg, #1a7878, #0d4b4b);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
.nx-quote p {
    font-size: 1.15em;
    line-height: 1.55;
    color: #2a2a2a;
    max-width: 720px;
    margin: 0 auto 36px;
}

.nx-footer {
    background: #0a0a0a;
    color: #c5c8c2;
    padding: 80px 32px 36px;
    margin-top: 60px;
}
.nx-footer-inner { max-width: 1280px; margin: 0 auto; }
.nx-footer-top {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    gap: 80px;
    padding-bottom: 56px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}
.nx-footer-brand h3 {
    font-size: 2.2em;
    margin: 0 0 12px;
    color: #fff;
    font-weight: 800;
    letter-spacing: -0.02em;
}
.nx-footer-brand p {
    color: #8a8e88;
    font-size: 0.96em;
    line-height: 1.55;
    margin: 0;
    max-width: 420px;
}
.nx-footer-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; }
.nx-footer-col { display: flex; flex-direction: column; gap: 12px; }
.nx-footer-label {
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.74em;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #1a7878;
    margin-bottom: 4px;
}
.nx-footer-col a {
    color: #c5c8c2;
    text-decoration: none;
    font-size: 0.94em;
    transition: color 0.14s;
}
.nx-footer-col a:hover { color: #fff; }

.nx-footer-bottom {
    display: flex;
    justify-content: space-between;
    padding-top: 36px;
    color: #5a5e58;
    font-family: ui-monospace, "SF Mono", Menlo, monospace;
    font-size: 0.78em;
    letter-spacing: 0.06em;
    flex-wrap: wrap;
    gap: 12px;
}

@media (max-width: 880px) {
    .nx-hero { padding: 60px 20px 50px; }
    .nx-section { padding: 60px 20px; }
    .nx-section-head { grid-template-columns: 1fr; gap: 16px; margin-bottom: 36px; }
    .nx-list-row { grid-template-columns: auto 1fr; gap: 16px 14px; padding: 20px 0; }
    .nx-list-num { grid-row: 1; grid-column: 1; }
    .nx-list-title { grid-row: 1; grid-column: 2; font-size: 1.15em; }
    .nx-list-desc { grid-row: 2; grid-column: 1 / -1; }
    .nx-list-meta { grid-row: 3; grid-column: 1 / -1; text-align: left; }
    .nx-stat-strip { grid-template-columns: 1fr 1fr; }
    .nx-stat-cell:nth-child(2n) { border-right: none; }
    .nx-cta-row { flex-direction: column; }
    .nx-cta { padding: 18px 28px; }
    .nx-cta-ghost { border-left: 1px solid #0a0a0a; }
    .nx-cta-row .nx-cta:first-child { border-right: 1px solid #0a0a0a; border-bottom: none; }
    .nx-bg .nx-mark.lg { font-size: 280px; }
    .nx-bg .nx-mark.md { font-size: 200px; }
    .nx-footer-top { grid-template-columns: 1fr; gap: 36px; }
    .nx-footer-cols { grid-template-columns: 1fr 1fr; gap: 24px; }
    .nx-footer-bottom { flex-direction: column; }
}

body.hp-active {
    background: #ece9d8;
}
body.hp-active .nav {
    background: #0a0a0a !important;
    border-bottom: 1px solid #0a0a0a !important;
}
body.hp-active .nav .nav-logo,
body.hp-active .nav .nav-link,
body.hp-active .nav .nav-external,
body.hp-active .nav button,
body.hp-active .nav .wallet-address { color: #ece9d8 !important; }
body.hp-active .nav .nav-link.active,
body.hp-active .nav .nav-link:hover { color: #1a7878 !important; }
body.hp-active .nav .nav-toggle span { background: #ece9d8 !important; }
body.hp-active .theme-toggle svg { stroke: #ece9d8 !important; }
