:root {
  --night: #030711;
  --night-2: #07101e;
  --panel: #0b1627;
  --panel-2: #101e32;
  --cyan: #63eeff;
  --blue: #1673ff;
  --violet: #9d4dff;
  --white: #f7fbff;
  --muted: #8fa6bd;
  --line: rgba(115, 174, 219, .2);
  --paper: #f3f8fc;
  --ink: #08111d;
  --mono: "DM Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--night);
  color: var(--white);
  font-family: "Manrope", system-ui, sans-serif;
  overflow-x: hidden;
}
body.modal-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img, video { max-width: 100%; display: block; }

.pixel-noise {
  position: fixed;
  inset: 0;
  z-index: 20;
  pointer-events: none;
  opacity: .035;
  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='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 10;
  height: 76px;
  padding: 0 4.5vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(3, 7, 17, .74);
  border-bottom: 1px solid rgba(125, 187, 232, .16);
  backdrop-filter: blur(18px);
}
.dmomo-brand { display: flex; align-items: center; gap: 11px; font-size: .84rem; font-weight: 800; letter-spacing: .17em; }
.dmomo-brand img { width: 38px; height: 38px; border-radius: 8px; object-fit: cover; image-rendering: pixelated; box-shadow: 0 0 18px rgba(22,115,255,.45); }
.decision-brand { display: block; width: 188px; height: 44px; flex: 0 0 188px; overflow: hidden; }
.decision-brand-crop { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; }
.decision-brand-crop img { position: absolute; width: 241px; max-width: none; height: auto; left: -32px; top: -46px; }
.desktop-nav { display: flex; gap: 2.2vw; }
.desktop-nav a { color: #91a7bd; font: 500 .76rem var(--mono); transition: color .2s ease; }
.desktop-nav a:hover { color: var(--cyan); }
.header-actions { display: flex; align-items: center; gap: 15px; }
.language-toggle { min-width: 104px; border: 0; background: transparent; color: #9bb0c4; padding: 10px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 7px; font: 500 .68rem var(--mono); letter-spacing: .06em; }
.language-toggle small { color: var(--cyan); font: 500 .58rem var(--mono); letter-spacing: .04em; }
.language-toggle:hover { color: #fff; }
.header-socials { display: flex; gap: 7px; }
.header-socials a { min-width: 38px; height: 36px; padding: 0 9px; display: grid; place-items: center; color: #dff6ff; background: rgba(11,31,54,.82); border: 1px solid #315878; font: 500 .68rem var(--mono); transition: color .2s ease, border-color .2s ease, background .2s ease; }
.header-socials a:hover { color: #fff; border-color: var(--cyan); background: #123a5b; }

.world-hero {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.world-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; image-rendering: pixelated; }
.world-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(2,5,13,.97) 0%, rgba(2,5,13,.87) 29%, rgba(2,5,13,.27) 59%, rgba(2,5,13,.05) 78%), linear-gradient(0deg, rgba(2,5,13,.86), transparent 31%, rgba(2,5,13,.26));
}
.hero-content { position: relative; z-index: 2; width: min(700px, 54vw); padding: 132px 0 100px 6vw; }
.kicker, .overline { color: var(--cyan); font: 500 .72rem var(--mono); letter-spacing: .15em; }
.kicker { display: flex; align-items: center; gap: 12px; margin-bottom: 30px; }
.kicker i { width: 8px; height: 8px; background: var(--cyan); box-shadow: 0 0 12px var(--cyan), 0 0 0 4px rgba(99,238,255,.12); animation: pulse 1.8s infinite; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 27px; font-size: clamp(3.4rem, 6.4vw, 6.7rem); line-height: .98; letter-spacing: -.065em; font-weight: 650; text-shadow: 0 6px 38px #02040a; }
h1 em, h2 em { color: var(--cyan); font-style: normal; }
.hero-content > p { max-width: 640px; margin-bottom: 38px; color: #b5c6d5; font-size: 1.05rem; line-height: 1.82; }
.hero-content > p:not(.hero-mission) { margin-bottom: 13px; }
.hero-content > .hero-mission { position: relative; margin-bottom: 27px; padding: 12px 16px 12px 18px; color: #e9fcff; background: linear-gradient(90deg, rgba(22,115,255,.28), rgba(7,22,38,.2)); border-left: 3px solid var(--cyan); font-weight: 700; line-height: 1.55; text-shadow: 0 2px 18px rgba(2,5,13,.8); }
.hero-actions, .vision-actions { display: flex; align-items: center; gap: 14px; }
.hero-community-actions { display: flex; gap: 11px; margin-top: 13px; }
.hero-community-actions a { min-height: 44px; min-width: 180px; padding: 0 16px; display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; color: #b9cddd; background: rgba(5,17,31,.72); border: 1px solid rgba(111,163,202,.32); backdrop-filter: blur(10px); font: 500 .72rem var(--mono); transition: color .2s ease, border-color .2s ease, background .2s ease; }
.hero-community-actions a:hover { color: #fff; border-color: var(--cyan); background: rgba(10,37,61,.88); }
.hero-community-actions b { color: var(--cyan); }
.pixel-button {
  min-height: 52px;
  padding: 0 21px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 27px;
  border: 1px solid;
  font: 500 .78rem var(--mono);
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.pixel-button.primary { color: white; background: var(--blue); border-color: #65b1ff; box-shadow: 5px 5px 0 #073473; }
.pixel-button.primary:hover { transform: translate(2px,2px); box-shadow: 3px 3px 0 #073473; }
.pixel-button.secondary { background: rgba(7,16,30,.72); border-color: rgba(149,198,235,.4); color: #d7e9f7; backdrop-filter: blur(10px); }
.pixel-button.secondary:hover { border-color: var(--cyan); background: rgba(10,30,51,.9); }
.hero-status { position: absolute; left: 6vw; bottom: 34px; z-index: 2; display: flex; align-items: center; gap: 18px; color: #6d879f; font: 500 .64rem var(--mono); letter-spacing: .12em; }
.hero-status div { display: flex; align-items: end; gap: 3px; height: 14px; }
.hero-status i { display: block; width: 2px; background: var(--cyan); animation: signal 1s ease-in-out infinite alternate; }
.hero-status i:nth-child(1) { height: 4px; }.hero-status i:nth-child(2) { height: 10px; animation-delay: .15s; }.hero-status i:nth-child(3) { height: 7px; animation-delay: .3s; }.hero-status i:nth-child(4) { height: 13px; animation-delay: .45s; }
.scroll-cue { position: absolute; right: 4.5vw; bottom: 30px; z-index: 2; display: flex; align-items: center; gap: 15px; color: #a6b9ca; font: 500 .67rem var(--mono); letter-spacing: .1em; }
.scroll-cue i { color: var(--cyan); font-style: normal; animation: down 1.6s ease-in-out infinite; }

.section { padding: 126px 5vw; position: relative; }
.section-index { max-width: 1400px; margin: 0 auto 76px; display: flex; align-items: center; gap: 19px; color: #71869a; font: 500 .67rem var(--mono); letter-spacing: .14em; }
.section-index span:first-child { color: var(--blue); }
.section-index i { width: 48px; height: 1px; background: #c7d6e2; }
.section-index.light i { background: #29405a; }
.section-index.light { color: #758ca3; }
.section-index.light span:first-child { color: var(--cyan); }

.problem { background: #06101d; overflow: hidden; }
.problem::before { content: ""; position: absolute; width: 640px; height: 640px; right: -170px; top: -210px; border-radius: 50%; background: radial-gradient(circle, rgba(22,115,255,.18), transparent 68%); }
.problem-grid { position: relative; max-width: 1300px; margin: 0 auto; display: grid; grid-template-columns: .9fr 1.1fr; gap: 9vw; align-items: start; }
.problem-heading h2, .proof-heading h2 { margin: 21px 0 0; font-size: clamp(2.7rem, 4.8vw, 5.2rem); line-height: 1.06; letter-spacing: -.055em; font-weight: 650; }
.problem-stack { border-top: 1px solid #1d3850; }
.problem-stack > div { min-height: 92px; display: grid; grid-template-columns: 48px 1fr; gap: 18px; align-items: center; border-bottom: 1px solid #1d3850; }
.problem-stack span { color: var(--cyan); font: 500 .67rem var(--mono); }
.problem-stack p { margin: 0; color: #acbfd0; font-size: 1.02rem; }
.problem-answer { max-width: 1300px; margin: 82px auto 0; padding: 34px 40px; display: grid; grid-template-columns: 180px 1fr; align-items: center; gap: 30px; background: #0b1a2b; border: 1px solid #244564; box-shadow: 8px 8px 0 #07111e; }
.problem-answer span { color: var(--cyan); font: 500 .69rem var(--mono); letter-spacing: .12em; }
.problem-answer p { margin: 0; color: #eef9ff; font-size: clamp(1.25rem, 2.2vw, 2rem); line-height: 1.4; font-weight: 600; letter-spacing: -.02em; }

.meet { background: var(--paper); color: var(--ink); }
.meet-grid { max-width: 1300px; margin: 0 auto; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 9vw; }
.portrait-stage { aspect-ratio: 1; background: #06101e; position: relative; display: grid; place-items: center; overflow: hidden; box-shadow: 18px 18px 0 #d8e8f5; }
.portrait-stage::before { content: ""; position: absolute; inset: 10%; border: 1px solid rgba(99,238,255,.22); }
.portrait-grid { position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(97,197,255,.45) 1px, transparent 1px), linear-gradient(90deg, rgba(97,197,255,.45) 1px, transparent 1px); background-size: 32px 32px; }
.portrait-ring { position: absolute; width: 72%; aspect-ratio: 1; border: 1px dashed rgba(99,238,255,.42); border-radius: 50%; animation: rotate 24s linear infinite; }
.portrait-stage > img { position: relative; z-index: 2; width: 72%; border-radius: 3px; image-rendering: pixelated; box-shadow: 0 0 70px rgba(22,115,255,.4); animation: float 4.8s ease-in-out infinite; }
.portrait-tag { position: absolute; z-index: 3; padding: 9px 11px; color: #8da7bd; background: rgba(3,8,17,.82); border: 1px solid #24425f; font: 500 .62rem var(--mono); letter-spacing: .09em; }
.tag-one { top: 7%; left: 6%; }.tag-two { right: 6%; bottom: 7%; color: var(--cyan); }
.meet-copy .overline { color: var(--blue); }
.meet-copy h2, .product-heading h2, .agents-heading h2, .social-copy h2, .vision h2 { font-size: clamp(2.6rem, 4.9vw, 5.4rem); line-height: 1.05; letter-spacing: -.055em; font-weight: 650; }
.meet-copy h2 { margin: 22px 0 28px; }
.meet-copy .lead { color: #4e6478; font-size: 1.02rem; line-height: 1.85; }
.ability-list { margin-top: 34px; border-top: 1px solid #cddce7; }
.ability-list > div { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 9px; min-height: 60px; border-bottom: 1px solid #cddce7; }
.ability-list > div > span { color: var(--blue); font: 500 .68rem var(--mono); }
.ability-list p { margin: 0; color: #506579; font-size: .9rem; }
.ability-list b { color: var(--ink); }

.product { background: #fff; color: var(--ink); }
.product-heading { max-width: 1300px; margin: 0 auto; display: grid; grid-template-columns: 1.08fr .92fr; gap: 9vw; align-items: end; }
.product-heading h2 { margin: 0; }
.product-heading p { color: #52677b; font-size: 1.02rem; line-height: 1.85; margin: 0 0 8px; }
.flow { max-width: 1300px; margin: 82px auto 130px; display: flex; align-items: center; justify-content: space-between; }
.flow > i { color: #a1b5c5; font-style: normal; }
.flow-step { width: 158px; aspect-ratio: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; border: 1px solid #cfdee9; background: #f7fafc; box-shadow: 7px 7px 0 #e1ecf4; }
.flow-step { position: relative; }
.flow-step.active { color: white; background: var(--blue); border-color: var(--blue); box-shadow: 7px 7px 0 #a7ccff; }
.flow-step.final { border-color: var(--blue); }
.flow-step span { align-self: flex-start; margin-left: 16px; position: absolute; transform: translateY(-52px); font: 500 .63rem var(--mono); color: #7690a7; }
.flow-step.active span { color: #cce6ff; }
.flow-step b { font: 500 .85rem var(--mono); letter-spacing: .08em; }
.flow-step small { margin-top: 9px; color: #6a8195; font-size: .75rem; }
.flow-step.active small { color: #d5e9ff; }
.outcome-grid { max-width: 1300px; margin: -80px auto 130px; display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid #d4e0e9; }
.outcome-grid article { min-height: 112px; padding: 20px 18px; display: flex; flex-direction: column; justify-content: space-between; background: #f7fafc; }
.outcome-grid article + article { border-left: 1px solid #d4e0e9; }
.outcome-grid span { color: var(--blue); font: 500 .61rem var(--mono); letter-spacing: .1em; }
.outcome-grid b { color: #384e62; font-size: .78rem; line-height: 1.55; font-weight: 600; }
.demo-block { max-width: 1300px; margin: 0 auto; padding: 68px; display: grid; grid-template-columns: .67fr 1.33fr; align-items: center; gap: 6vw; color: white; background: var(--night-2); box-shadow: 16px 16px 0 #dce9f3; }
.demo-copy .overline { color: var(--cyan); }
.demo-copy h3 { margin: 20px 0 18px; font-size: 2rem; line-height: 1.2; }
.demo-copy p { color: #91a8bc; line-height: 1.75; font-size: .92rem; }
.demo-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.demo-meta span { padding: 7px 8px; border: 1px solid #263f58; color: #69839a; font: 500 .56rem var(--mono); }
.demo-showcase { min-width: 0; }
.video-shell { border: 1px solid #294866; background: #02050b; box-shadow: 0 26px 50px rgba(0,0,0,.35); }
.window-bar { height: 34px; display: flex; align-items: center; gap: 6px; padding: 0 11px; color: #5f7890; border-bottom: 1px solid #223c54; font: 500 .56rem var(--mono); }
.window-bar i { width: 6px; height: 6px; background: #304b65; }
.window-bar i:first-child { background: var(--cyan); }
.window-bar span { margin-left: 7px; }
.video-shell video { width: 100%; aspect-ratio: 910/512; background: black; }
.demo-playlist { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 13px; }
.demo-option { min-width: 0; min-height: 128px; padding: 15px; display: flex; flex-direction: column; align-items: flex-start; text-align: left; color: #849caf; background: #07101b; border: 1px solid #213a51; cursor: pointer; transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease; }
.demo-option:hover { transform: translateY(-3px); border-color: #3a6688; }
.demo-option:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }
.demo-option.active { color: #dffbff; border-color: var(--cyan); background: linear-gradient(145deg, rgba(25,89,128,.5), rgba(5,22,35,.95)); box-shadow: inset 0 -3px 0 rgba(99,238,255,.18), 0 0 22px rgba(43,183,255,.12); }
.demo-option > span { color: #526f87; font: 500 .55rem var(--mono); letter-spacing: .08em; }
.demo-option.active > span { color: var(--cyan); }
.demo-option strong { margin-top: 12px; color: #d2e3ef; font-size: .76rem; line-height: 1.35; }
.demo-option small { margin-top: 8px; color: #6f879a; font-size: .65rem; line-height: 1.45; }
.demo-option.active small { color: #94b6c9; }

.proof { background: #091321; overflow: hidden; }
.proof::before { content: ""; position: absolute; inset: 0; opacity: .11; background-image: linear-gradient(rgba(85,153,207,.32) 1px, transparent 1px), linear-gradient(90deg, rgba(85,153,207,.32) 1px, transparent 1px); background-size: 40px 40px; mask-image: linear-gradient(to bottom, #000, transparent 78%); }
.proof-heading { position: relative; max-width: 1000px; margin: 0 auto 65px; text-align: center; }
.proof-heading p { max-width: 680px; margin: 25px auto 0; color: #8da5ba; font-size: 1rem; line-height: 1.8; }
.status-grid { position: relative; max-width: 1300px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.status-card { min-height: 330px; padding: 30px; background: rgba(11,27,45,.93); border: 1px solid #223d57; }
.status-card header { display: flex; align-items: center; gap: 10px; color: #718ba2; font: 500 .61rem var(--mono); letter-spacing: .09em; }
.status-card header i { width: 7px; height: 7px; background: #527089; }
.status-card.live header i { background: #35e3a9; box-shadow: 0 0 10px rgba(53,227,169,.65); }
.status-card.building header i { background: var(--cyan); box-shadow: 0 0 10px rgba(99,238,255,.65); animation: pulse 1.8s infinite; }
.status-card.next header i { background: var(--violet); }
.status-card h3 { margin: 34px 0 24px; font-size: 1.55rem; }
.status-card ul { margin: 0; padding: 0; list-style: none; }
.status-card li { position: relative; padding: 12px 0 12px 20px; color: #90a7bb; border-top: 1px solid #1d374f; font-size: .88rem; line-height: 1.5; }
.status-card li::before { content: "+"; position: absolute; left: 0; color: #4d789a; font-family: var(--mono); }
.status-card.live li::before { color: #35e3a9; }

.agents { min-height: 980px; background: var(--night); overflow: hidden; }
.agents::before { content: ""; position: absolute; width: 800px; height: 800px; left: 50%; top: 54%; transform: translate(-50%,-50%); background: radial-gradient(circle, rgba(25,101,255,.17), transparent 67%); pointer-events: none; }
.agents-heading { position: relative; z-index: 2; max-width: 770px; margin: 0 auto; text-align: center; }
.agents-heading h2 { margin: 20px 0 24px; }
.agents-heading p { max-width: 660px; margin: 0 auto; color: #8ea5ba; line-height: 1.8; font-size: 1rem; }
.agent-orbit { position: relative; max-width: 1100px; height: 500px; margin: 20px auto 0; }
.agent-core { position: absolute; z-index: 3; left: 50%; top: 50%; transform: translate(-50%,-42%); width: 184px; height: 210px; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.agent-core img { width: 110px; height: 110px; object-fit: cover; border-radius: 4px; image-rendering: pixelated; border: 1px solid var(--cyan); box-shadow: 0 0 45px rgba(99,238,255,.33); }
.agent-core b { margin-top: 15px; font: 500 .78rem var(--mono); letter-spacing: .15em; }
.agent-core small { margin-top: 7px; color: var(--cyan); font: 500 .57rem var(--mono); letter-spacing: .12em; }
.core-pulse { position: absolute; width: 195px; height: 195px; border-radius: 50%; border: 1px dashed rgba(99,238,255,.35); animation: rotate 17s linear infinite; }
.agent-card { position: absolute; z-index: 2; width: 240px; min-height: 82px; padding: 14px; display: flex; align-items: center; gap: 14px; background: rgba(11,22,39,.84); border: 1px solid #213b54; backdrop-filter: blur(8px); }
.agent-card > span { flex: 0 0 42px; height: 42px; display: grid; place-items: center; color: var(--cyan); background: #0c2741; border: 1px solid #2d658c; font: 500 .8rem var(--mono); }
.agent-card b { display: block; margin-bottom: 7px; color: #e5f5ff; font: 500 .67rem var(--mono); letter-spacing: .07em; }
.agent-card small { color: #7f99b0; font-size: .74rem; }
.research-card { top: 59px; left: 30px; }.market-card { top: 59px; right: 30px; }.risk-card { bottom: 45px; left: 30px; }.news-card { right: 30px; bottom: 45px; }
.orbit-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
.orbit-lines path { stroke: #214769; stroke-width: 1; stroke-dasharray: 5 7; fill: none; }
.coordination-strip { max-width: 1100px; min-height: 74px; margin: -28px auto 0; padding: 15px 20px; display: flex; align-items: center; justify-content: center; gap: 13px; border: 1px solid #1d3d58; background: rgba(7,19,34,.82); color: #7793a9; font: 500 .59rem var(--mono); letter-spacing: .07em; }
.coordination-strip i { color: #355c7b; font-style: normal; }
.coordination-strip b { margin-left: 14px; padding: 9px 11px; color: var(--cyan); border: 1px solid #2d5977; font-weight: 500; }

.social { background: var(--paper); color: var(--ink); }
.social-grid { max-width: 1300px; margin: 0 auto; display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 7vw; }
.social-copy .overline { color: var(--blue); }
.social-copy h2 { margin: 21px 0 27px; }
.social-copy > p { color: #53687c; line-height: 1.85; font-size: 1rem; }
.social-copy blockquote { margin: 30px 0 0; padding: 23px 0 23px 24px; color: #10263a; border-left: 3px solid var(--blue); font-size: 1.18rem; line-height: 1.6; font-weight: 650; letter-spacing: -.015em; }
.people-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 35px; background: #cddce7; border: 1px solid #cddce7; }
.people-grid > div { min-height: 93px; padding: 16px; display: flex; align-items: center; gap: 13px; background: white; }
.people-grid i { width: 37px; height: 37px; display: grid; place-items: center; flex: 0 0 37px; color: var(--blue); background: #edf5ff; font-style: normal; }
.people-grid b { display: block; margin-bottom: 5px; font-size: .84rem; }
.people-grid small { color: #7990a4; font-size: .7rem; }
.social-scene { position: relative; box-shadow: 16px 16px 0 #d6e6f2; overflow: hidden; border: 7px solid white; }
.social-scene img { width: 100%; min-height: 490px; object-fit: cover; object-position: 57% center; image-rendering: pixelated; }
.social-scene::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 0 1px rgba(64,135,195,.4); pointer-events: none; }
.scene-callout { position: absolute; display: flex; align-items: center; gap: 8px; padding: 9px 11px; color: #a9c5dc; background: rgba(4,10,20,.86); border: 1px solid #315979; font: 500 .55rem var(--mono); letter-spacing: .08em; }
.scene-callout i { width: 6px; height: 6px; background: var(--cyan); }
.callout-one { left: 5%; top: 8%; }.callout-two { right: 5%; bottom: 8%; }
.value-bridge { max-width: 1300px; margin: 90px auto 0; padding: 32px 38px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 38px; align-items: center; background: white; border: 1px solid #cedde8; box-shadow: 9px 9px 0 #d9e8f3; }
.value-bridge > div { display: flex; flex-direction: column; gap: 10px; }
.value-bridge span { color: var(--blue); font: 500 .67rem var(--mono); letter-spacing: .1em; }
.value-bridge b { color: #344b5f; font-size: .9rem; line-height: 1.6; font-weight: 600; }
.value-bridge > i { color: #9cb0c1; font-style: normal; font-family: var(--mono); }

.coin {
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 14%, rgba(22,115,255,.2), transparent 30%),
    linear-gradient(180deg, #07111f 0%, #030711 100%);
}
.coin::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .22; background-image: linear-gradient(rgba(74,143,199,.16) 1px, transparent 1px), linear-gradient(90deg, rgba(74,143,199,.16) 1px, transparent 1px); background-size: 40px 40px; mask-image: linear-gradient(to bottom, #000, transparent 84%); }
.coin > * { position: relative; z-index: 1; }
.coin-intro { max-width: 1300px; margin: 0 auto; display: grid; grid-template-columns: .82fr 1.18fr; gap: 8vw; align-items: start; }
.coin-heading h2 { margin: 21px 0 0; max-width: 620px; }
.coin-heading h2 em { color: var(--cyan); }
.coin-story { padding-top: 43px; }
.coin-lead { margin: 0; color: #b0c3d6; font-size: 1.08rem; line-height: 1.9; }
.fund-grid { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 34px; border: 1px solid #203d58; background: rgba(6,18,32,.72); }
.fund-grid article { min-height: 144px; padding: 21px; display: flex; flex-direction: column; border-left: 1px solid #203d58; }
.fund-grid article:first-child { border-left: 0; }
.fund-grid span { color: var(--cyan); font: 500 .72rem var(--mono); }
.fund-grid b { margin: 22px 0 7px; color: #f5fbff; font-size: .92rem; }
.fund-grid small { color: #7993aa; font-size: .78rem; line-height: 1.5; }
.launch-timeline { max-width: 1300px; margin: 58px auto 0; padding: 24px 30px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 30px; align-items: center; background: linear-gradient(90deg, rgba(15,48,78,.9), rgba(8,25,43,.92)); border: 1px solid #32739d; box-shadow: 8px 8px 0 rgba(10,45,70,.42); }
.launch-timeline > div { display: grid; grid-template-columns: auto 1fr; gap: 5px 18px; align-items: center; }
.launch-timeline span { grid-row: 1 / 3; color: var(--cyan); font: 500 .84rem var(--mono); letter-spacing: .1em; }
.launch-timeline b { color: #f4fbff; font-size: 1rem; }
.launch-timeline small { color: #91a9bd; font-size: .8rem; line-height: 1.5; }
.launch-timeline > i { color: #5ecfe7; font-style: normal; font-family: var(--mono); }
.signal-lab { max-width: 1300px; margin: 78px auto 0; padding: 30px; background: rgba(4,15,27,.78); border: 1px solid #28506e; box-shadow: 11px 11px 0 rgba(9,44,69,.42); }
.signal-lab-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: end; padding-bottom: 27px; border-bottom: 1px solid #203d56; }
.signal-lab-heading h3 { margin: 12px 0 0; font-size: clamp(1.7rem, 2.8vw, 2.65rem); letter-spacing: -.035em; }
.signal-lab-heading p { max-width: 520px; margin: 0; justify-self: end; color: #8ca6bb; font-size: .95rem; line-height: 1.72; }
.signal-device-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 24px; }
.signal-device {
  --device-accent: #63eeff;
  position: relative;
  min-width: 0;
  padding: 18px;
  overflow: hidden;
  color: #edfaff;
  text-align: left;
  cursor: pointer;
  appearance: none;
  background: linear-gradient(180deg, rgba(13,31,51,.96), rgba(5,14,25,.98));
  border: 1px solid #294a63;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.018);
  transition: transform .16s steps(2,end), border-color .2s ease, box-shadow .2s ease;
}
.signal-device:hover { border-color: var(--device-accent); box-shadow: 0 0 24px color-mix(in srgb, var(--device-accent) 22%, transparent); }
.signal-device:focus-visible { outline: 3px solid var(--device-accent); outline-offset: 4px; }
.signal-device:active, .signal-device.activated { transform: translate(2px, 2px); }
.signal-device.activated { border-color: var(--device-accent); box-shadow: 0 0 0 1px var(--device-accent), 0 0 32px color-mix(in srgb, var(--device-accent) 30%, transparent); animation: deviceKick .34s steps(3,end); }
.radar-device { --device-accent: #55eaff; }
.pulse-device { --device-accent: #9a7cff; }
.gate-device { --device-accent: #ffbd58; }
.device-topline { display: flex; align-items: center; justify-content: space-between; color: #67859e; font: 500 .65rem var(--mono); letter-spacing: .12em; }
.device-topline > i { width: 8px; height: 8px; background: #456177; box-shadow: 0 0 0 3px rgba(69,97,119,.13); }
.signal-device.activated .device-topline > i { background: var(--device-accent); box-shadow: 0 0 13px var(--device-accent), 0 0 0 3px color-mix(in srgb, var(--device-accent) 18%, transparent); }
.device-stage { position: relative; display: block; height: 210px; margin: 16px 0 20px; overflow: hidden; background: #020912; border: 1px solid #183149; image-rendering: pixelated; }
.device-stage::before { content: ""; position: absolute; inset: 0; opacity: .33; background-image: linear-gradient(rgba(76,141,189,.2) 1px, transparent 1px), linear-gradient(90deg, rgba(76,141,189,.2) 1px, transparent 1px); background-size: 18px 18px; }
.device-stage::after { content: ""; position: absolute; inset: 13px; border: 4px solid #0e2133; box-shadow: inset 0 0 0 3px #030a12; }
.device-frame { position: absolute; z-index: 1; inset: 31px 38px; border: 8px solid #102c42; box-shadow: 8px 8px 0 #06131f, -8px -8px 0 #16354d; }
.device-core, .device-beam, .device-pixels, .device-pixels i { position: absolute; z-index: 2; display: block; }
.device-core { left: 50%; top: 50%; transform: translate(-50%,-50%); transition: filter .2s ease; }
.device-beam { opacity: .34; background: var(--device-accent); box-shadow: 0 0 10px var(--device-accent); }
.device-pixels { inset: 0; }
.device-pixels i { width: 8px; height: 8px; background: var(--device-accent); opacity: .25; }
.device-pixels i:nth-child(1) { left: 20%; top: 35%; }
.device-pixels i:nth-child(2) { left: 31%; top: 69%; }
.device-pixels i:nth-child(3) { right: 22%; top: 29%; }
.device-pixels i:nth-child(4) { right: 29%; bottom: 24%; }
.device-pixels i:nth-child(5) { left: 47%; top: 18%; }
.radar-device .device-core { width: 62px; height: 62px; border: 9px solid var(--device-accent); background: #071827; box-shadow: 0 0 0 8px #0a273a, 0 0 0 10px color-mix(in srgb, var(--device-accent) 40%, transparent); transform: translate(-50%,-50%) rotate(45deg); }
.radar-device .device-beam { left: 50%; top: 21px; width: 4px; height: 166px; transform-origin: 50% 84px; }
.pulse-device .device-core { width: 14px; height: 92px; background: var(--device-accent); box-shadow: -44px 23px 0 -2px #574b92, -22px -18px 0 -2px #745fc7, 22px 8px 0 -2px #7966cb, 44px -27px 0 -2px #4b407f, 0 0 18px var(--device-accent); }
.pulse-device .device-beam { left: 18%; top: 50%; width: 64%; height: 4px; }
.gate-device .device-core { width: 106px; height: 78px; border-left: 18px solid var(--device-accent); border-right: 18px solid var(--device-accent); background: linear-gradient(90deg, transparent 42%, color-mix(in srgb, var(--device-accent) 45%, transparent) 43% 57%, transparent 58%); box-shadow: inset 0 12px 0 #183044, inset 0 -12px 0 #183044, 0 0 18px color-mix(in srgb, var(--device-accent) 35%, transparent); }
.gate-device .device-beam { left: calc(50% - 31px); top: calc(50% - 4px); width: 62px; height: 8px; }
.signal-device.activated .device-core { filter: brightness(1.45) drop-shadow(0 0 12px var(--device-accent)); animation: deviceCoreWake .5s steps(4,end) 2; }
.signal-device.activated .device-beam { opacity: 1; }
.radar-device.activated .device-beam { animation: radarSweep .8s steps(8,end) 2; }
.pulse-device.activated .device-beam { animation: pulseRead .55s steps(5,end) 3; }
.gate-device.activated .device-beam { animation: gateRead .65s steps(5,end) 2; }
.signal-device.activated .device-pixels i { animation: deviceBlink .36s steps(2,end) infinite alternate; }
.signal-device.activated .device-pixels i:nth-child(2) { animation-delay: -.12s; }
.signal-device.activated .device-pixels i:nth-child(3) { animation-delay: -.24s; }
.signal-device.activated .device-pixels i:nth-child(4) { animation-delay: -.34s; }
.signal-device.activated .device-pixels i:nth-child(5) { animation-delay: -.18s; }
.signal-device > strong { display: block; color: #f2fbff; font-size: 1.08rem; }
.signal-device > small { display: block; min-height: 50px; margin-top: 8px; color: #8099ae; font-size: .82rem; line-height: 1.55; }
.device-status { display: flex; align-items: center; gap: 9px; margin-top: 17px; padding-top: 14px; border-top: 1px solid #1a344a; color: #66859e; font: 500 .62rem var(--mono); letter-spacing: .08em; }
.device-status > i { width: 6px; height: 6px; background: #526a7c; }
.signal-device.activated .device-status { color: var(--device-accent); }
.signal-device.activated .device-status > i { background: var(--device-accent); box-shadow: 0 0 9px var(--device-accent); }
.signal-lab-note { margin: 20px 0 0; color: #5e788d; font: 400 .67rem/1.6 var(--mono); letter-spacing: .04em; text-align: center; }
.coin-visual { max-width: 1300px; margin: 92px auto 34px; display: grid; grid-template-columns: 1.35fr .65fr; gap: 20px; }
.badge-showcase, .shirt-showcase { min-width: 0; padding: 20px; background: rgba(9,23,41,.88); border: 1px solid #274963; box-shadow: 9px 9px 0 rgba(14,53,82,.45); }
.asset-label { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 34px; margin-bottom: 13px; color: #d9f6ff; font: 500 .72rem var(--mono); letter-spacing: .08em; }
.asset-label small { color: #718da5; font: 400 .7rem var(--mono); letter-spacing: 0; text-align: right; }
.badge-showcase img, .shirt-showcase img { width: 100%; height: 360px; object-fit: contain; background: #02050a; border: 1px solid #142a3e; }
.badge-showcase img { image-rendering: pixelated; }
.shirt-showcase img { object-fit: cover; }
.tier-instruction { max-width: 1300px; margin: 58px auto -32px; color: #8ba5bc; font: 500 .8rem/1.6 var(--mono); letter-spacing: .04em; }
.tier-grid { max-width: 1300px; margin: 58px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.tier-card { position: relative; min-height: 480px; padding: 27px; background: linear-gradient(180deg, rgba(14,30,50,.98), rgba(6,15,27,.98)); border: 1px solid #29455d; overflow: hidden; cursor: pointer; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease; }
.tier-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--tier); box-shadow: 0 0 22px var(--tier); }
.tier-card::after { content: ""; position: absolute; width: 210px; height: 210px; top: -120px; right: -100px; border-radius: 50%; background: radial-gradient(circle, var(--tier-glow), transparent 68%); pointer-events: none; }
.tier-card:hover { transform: translateY(-5px); border-color: var(--tier); }
.tier-card:focus-visible { outline: 3px solid var(--tier); outline-offset: 4px; }
.tier-card.active { transform: translateY(-7px); border-color: var(--tier); background: linear-gradient(180deg, var(--tier-glow), rgba(6,15,27,.98) 48%); box-shadow: 0 0 0 1px var(--tier), 0 18px 38px rgba(0,0,0,.32), 8px 8px 0 rgba(31,74,104,.38); }
.tier-card header { display: flex; align-items: baseline; justify-content: space-between; padding-bottom: 22px; border-bottom: 1px solid #203b52; }
.tier-card header span { color: var(--tier); font: 500 .75rem var(--mono); letter-spacing: .16em; }
.tier-card header b { color: #fff; font: 500 1.55rem var(--mono); }
.tier-icon { width: 110px; height: 110px; margin: 23px auto 0; background-image: url("./assets/dmomo-badge-tiers-v1.png"); background-repeat: no-repeat; background-size: 300% 100%; filter: saturate(.72) brightness(.82); transition: transform .25s ease, filter .25s ease; image-rendering: pixelated; }
.blue-tier .tier-icon { background-position: left center; }
.silver-tier .tier-icon { background-position: center center; }
.gold-tier .tier-icon { background-position: right center; }
.tier-card:hover .tier-icon, .tier-card.active .tier-icon { transform: scale(1.08); filter: saturate(1.08) brightness(1.08) drop-shadow(0 0 13px var(--tier)); }
.tier-threshold { margin: 25px 0 0; color: var(--tier); font: 500 .82rem/1.5 var(--mono); }
.tier-card h3 { margin: 14px 0 22px; font-size: 1.42rem; }
.tier-card ul { margin: 0; padding: 0; list-style: none; }
.tier-card li { position: relative; padding: 12px 0 12px 21px; color: #a9bfd2; font-size: .9rem; line-height: 1.55; border-top: 1px solid rgba(52,81,105,.35); }
.tier-card li:first-child { border-top: 0; }
.tier-card li::before { content: "◆"; position: absolute; left: 0; top: 14px; color: var(--tier); font-size: .55rem; }
.blue-tier { --tier: #46caff; --tier-glow: rgba(28,141,255,.38); }
.silver-tier { --tier: #d5e7f6; --tier-glow: rgba(181,215,240,.28); }
.gold-tier { --tier: #ffc84a; --tier-glow: rgba(255,184,29,.32); }
.passport-status { max-width: 1300px; margin: 31px auto 0; min-height: 92px; padding: 20px 25px; display: flex; align-items: center; gap: 20px; background: rgba(8,22,38,.88); border: 1px solid #294b66; }
.passport-pixel { width: 48px; height: 48px; flex: 0 0 48px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; align-items: end; }
.passport-pixel i { display: block; background: var(--selected-color, var(--cyan)); box-shadow: 0 0 12px var(--selected-color, var(--cyan)); animation: passportSignal .9s steps(2,end) infinite alternate; }
.passport-pixel i:nth-child(1) { height: 42%; }
.passport-pixel i:nth-child(2) { height: 92%; animation-delay: -.3s; }
.passport-pixel i:nth-child(3) { height: 64%; animation-delay: -.55s; }
.passport-status span { display: block; color: #6687a1; font: 500 .68rem var(--mono); letter-spacing: .12em; }
.passport-status b { display: block; margin: 6px 0 4px; color: #eaf9ff; font-size: 1rem; }
.passport-status small { color: #829bb0; font-size: .8rem; }
.verify-box { max-width: 1300px; margin: 58px auto 0; padding: 34px 38px; display: grid; grid-template-columns: 1fr auto; gap: 20px 35px; align-items: center; background: #0b1b2d; border: 1px solid #315a79; box-shadow: 9px 9px 0 rgba(14,53,82,.48); }
.verify-box h3 { margin: 13px 0 8px; font-size: 1.65rem; }
.verify-box p { max-width: 760px; margin: 0; color: #91a9bd; line-height: 1.7; }
.verify-box .pixel-button { grid-row: 1; grid-column: 2; }
.verify-email { grid-column: 1 / -1; color: var(--cyan); font: 500 .78rem var(--mono); letter-spacing: .05em; }
.verify-email:hover { text-decoration: underline; }
.coin-disclaimer { max-width: 1300px; margin: 28px auto 0; color: #6f879d; font: 400 .78rem/1.75 var(--mono); }

.dmomo-guide { position: fixed; left: 22px; bottom: 22px; z-index: 30; display: flex; align-items: flex-end; gap: 12px; pointer-events: none; }
.guide-character { position: relative; width: 68px; height: 68px; flex: 0 0 68px; padding: 0; overflow: hidden; border: 1px solid #3b7aa2; border-radius: 13px; background: #061729; box-shadow: 6px 6px 0 rgba(5,35,58,.62), 0 0 28px rgba(40,162,255,.22); cursor: pointer; pointer-events: auto; animation: guideFloat 3.4s ease-in-out infinite; }
.guide-character img { width: 100%; height: 100%; object-fit: cover; image-rendering: pixelated; transition: transform .2s ease, filter .2s ease; }
.guide-character:hover img { transform: scale(1.08); filter: brightness(1.12); }
.guide-character i { position: absolute; right: 6px; bottom: 6px; width: 9px; height: 9px; border-radius: 50%; background: #62f5d1; box-shadow: 0 0 10px #62f5d1; }
.guide-character.talking img { animation: guideTalk .55s steps(2,end) 2; }
.guide-bubble { max-width: 270px; padding: 12px 15px; opacity: 0; transform: translateX(-10px) scale(.96); color: #dff8ff; background: rgba(3,14,25,.94); border: 1px solid #356a8e; box-shadow: 5px 5px 0 rgba(6,38,62,.55); font: 500 .78rem/1.55 var(--mono); pointer-events: none; transition: opacity .22s ease, transform .22s ease; }
.guide-bubble.visible { opacity: 1; transform: translateX(0) scale(1); }
.pixel-warp { position: fixed; inset: 0; z-index: 45; display: flex; align-items: center; justify-content: space-evenly; pointer-events: none; opacity: 0; visibility: hidden; background: rgba(1,7,15,.68); }
.pixel-warp i { width: 7vw; height: 7vw; max-width: 86px; max-height: 86px; background: var(--cyan); box-shadow: 0 0 40px var(--blue); transform: scale(0) rotate(45deg); }
body.guiding .pixel-warp { visibility: visible; animation: warpFade .7s steps(4,end) both; }
body.guiding .pixel-warp i { animation: warpPixel .7s steps(4,end) both; }
body.guiding .pixel-warp i:nth-child(2) { animation-delay: .05s; }
body.guiding .pixel-warp i:nth-child(3) { animation-delay: .1s; }
body.guiding .pixel-warp i:nth-child(4) { animation-delay: .15s; }
body.guiding .pixel-warp i:nth-child(5) { animation-delay: .2s; }
.coin.guide-arrival { animation: sectionArrival 1.15s ease; }
.easter-egg { position: fixed; inset: 0; z-index: 60; padding: 24px; display: grid; place-items: center; background: rgba(1,5,12,.88); backdrop-filter: blur(8px); }
.easter-egg[hidden] { display: none; }
.easter-card { position: relative; width: min(560px, 100%); padding: 42px; text-align: center; background: linear-gradient(180deg, #0c2640, #06101d); border: 1px solid var(--cyan); box-shadow: 12px 12px 0 rgba(16,77,115,.55), 0 0 55px rgba(44,176,255,.28); animation: easterIn .35s steps(4,end) both; }
.easter-card::before { content: ""; position: absolute; inset: 9px; border: 1px dashed rgba(99,238,255,.25); pointer-events: none; }
.easter-card img { width: 116px; height: 116px; margin: 0 auto 20px; object-fit: cover; border-radius: 18px; image-rendering: pixelated; box-shadow: 0 0 30px rgba(22,115,255,.5); }
.easter-card > span { color: var(--cyan); font: 500 .7rem var(--mono); letter-spacing: .15em; }
.easter-card h2 { margin: 17px 0 13px; font-size: 2rem; }
.easter-card p { margin: 0 auto; max-width: 430px; color: #9cb5ca; line-height: 1.75; }
.easter-close { position: absolute; right: 14px; top: 14px; width: 38px; height: 38px; padding: 0; color: #a9c8dd; background: #0c2034; border: 1px solid #315a78; cursor: pointer; font-size: 1.3rem; }
.easter-close:hover, .easter-close:focus-visible { color: #fff; border-color: var(--cyan); }

.vision { position: relative; min-height: 860px; display: grid; place-items: center; padding: 130px 5vw; overflow: hidden; background: #02050c; text-align: center; }
.vision::before { content: ""; position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(74,143,199,.28) 1px, transparent 1px), linear-gradient(90deg, rgba(74,143,199,.28) 1px, transparent 1px); background-size: 44px 44px; mask-image: radial-gradient(circle, #000, transparent 70%); }
.vision-glow { position: absolute; width: 700px; height: 700px; border-radius: 50%; background: radial-gradient(circle, rgba(22,115,255,.22), transparent 66%); }
.vision-inner { position: relative; z-index: 2; max-width: 1050px; }
.section-number { color: #668099; font: 500 .65rem var(--mono); letter-spacing: .15em; }
.decision-logo { width: min(640px, 76vw); margin: 44px auto 38px; mix-blend-mode: screen; }
.vision h2 { margin-bottom: 28px; }
.vision p { max-width: 780px; margin: 0 auto; color: #90a6bb; font-size: 1.02rem; line-height: 1.85; }
.vision-actions { justify-content: center; margin-top: 42px; }
.text-link { color: #9ab0c3; padding: 15px; font: 500 .72rem var(--mono); }
.text-link:hover { color: var(--cyan); }

footer { min-height: 112px; padding: 25px 4.5vw; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; border-top: 1px solid #15273a; background: #02050c; color: #687f94; }
.footer-branding { display: flex; align-items: center; gap: 9px; font: 500 .65rem var(--mono); letter-spacing: .1em; }
.footer-branding img { width: 30px; height: 30px; object-fit: cover; border-radius: 4px; image-rendering: pixelated; }
.footer-branding i { margin: 0 3px; color: #355069; font-style: normal; }
.footer-branding strong { color: #9cb1c4; font-weight: 500; }
footer p { margin: 0; text-align: center; font: 400 .62rem var(--mono); }
.footer-socials { display: flex; justify-content: flex-end; gap: 9px; }
.footer-socials a { padding: 9px 11px; border: 1px solid #203950; color: #8fa9bf; font: 500 .6rem var(--mono); letter-spacing: .08em; transition: color .2s ease, border-color .2s ease; }
.footer-socials a:hover { color: var(--cyan); border-color: #326b91; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .78s ease, transform .78s cubic-bezier(.2,.75,.25,1); }
.reveal.visible { opacity: 1; transform: translateY(0); }

@keyframes pulse { 50% { box-shadow: 0 0 22px var(--cyan), 0 0 0 8px rgba(99,238,255,0); } }
@keyframes signal { to { transform: scaleY(.35); opacity: .42; } }
@keyframes down { 50% { transform: translateY(5px); } }
@keyframes rotate { to { transform: rotate(360deg); } }
@keyframes float { 0%,100% { transform: translateY(-5px); } 50% { transform: translateY(8px); } }
@keyframes guideFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes guideTalk { 50% { transform: scale(.94) translateY(2px); filter: brightness(1.3); } }
@keyframes passportSignal { to { height: 30%; opacity: .55; } }
@keyframes deviceKick { 0%,100% { transform: translate(2px,2px); } 45% { transform: translate(-2px,1px); } 70% { transform: translate(3px,-1px); } }
@keyframes deviceCoreWake { 50% { opacity: .62; } }
@keyframes deviceBlink { to { opacity: 1; box-shadow: 0 0 9px var(--device-accent); } }
@keyframes radarSweep { to { transform: rotate(360deg); } }
@keyframes pulseRead { 0%,100% { transform: scaleX(.2); } 50% { transform: scaleX(1); } }
@keyframes gateRead { 0% { transform: translateX(-23px); opacity: .3; } 50% { opacity: 1; } 100% { transform: translateX(23px); opacity: .3; } }
@keyframes warpFade { 0% { opacity: 0; } 30%,65% { opacity: 1; } 100% { opacity: 0; } }
@keyframes warpPixel { 0% { transform: scale(0) rotate(45deg); } 55% { transform: scale(1) rotate(135deg); } 100% { transform: scale(0) rotate(225deg); } }
@keyframes sectionArrival { 0%,100% { box-shadow: none; } 40% { box-shadow: inset 0 0 110px rgba(35,165,255,.24); } }
@keyframes easterIn { from { opacity: 0; transform: translateY(24px) scale(.92); } to { opacity: 1; transform: none; } }

@media (max-width: 980px) {
  .desktop-nav { display: none; }
  .hero-content { width: min(700px, 72vw); }
  .problem-grid, .meet-grid, .product-heading, .social-grid, .coin-intro { grid-template-columns: 1fr; gap: 65px; }
  .portrait-stage { max-width: 620px; margin: 0 auto; width: 100%; }
  .flow { flex-wrap: wrap; justify-content: center; gap: 15px; }
  .flow > i { display: none; }
  .flow-step { width: calc(33.333% - 14px); max-width: 180px; }
  .outcome-grid { grid-template-columns: repeat(3, 1fr); }
  .outcome-grid article:nth-child(4) { border-left: 0; border-top: 1px solid #d4e0e9; }
  .outcome-grid article:nth-child(5) { border-top: 1px solid #d4e0e9; }
  .demo-block { grid-template-columns: 1fr; }
  .status-grid { grid-template-columns: 1fr; }
  .status-card { min-height: auto; }
  .social-scene { order: -1; }
  .agents { min-height: 1040px; }
  .coin-story { padding-top: 0; }
  .launch-timeline { grid-template-columns: 1fr; }
  .launch-timeline > i { transform: rotate(90deg); justify-self: center; }
  .coin-visual { grid-template-columns: 1fr; }
  .signal-device-grid { grid-template-columns: 1fr; }
  .signal-device { display: grid; grid-template-columns: 245px 1fr; column-gap: 24px; align-items: center; }
  .device-topline, .device-stage { grid-row: 1 / 5; grid-column: 1; }
  .device-topline { align-self: start; z-index: 2; padding: 13px; }
  .device-stage { width: 100%; margin: 0; }
  .signal-device > strong, .signal-device > small, .device-status { grid-column: 2; }
  .tier-grid { grid-template-columns: 1fr; }
  .tier-card { min-height: auto; }
}

@media (max-width: 720px) {
  .site-header { height: 66px; padding: 0 18px; }
  .decision-brand { width: 135px; height: 32px; flex-basis: 135px; }
  .decision-brand-crop img { width: 164px; left: -22px; top: -31px; }
  .header-actions { gap: 7px; }
  .language-toggle { min-width: 82px; padding: 8px 4px; font-size: .58rem; gap: 4px; }
  .language-toggle small { font-size: .52rem; }
  .header-socials a { min-width: 34px; height: 34px; padding: 0 7px; font-size: .62rem; }
  .world-hero { min-height: 1010px; align-items: flex-start; }
  .world-art { object-position: 62% center; }
  .world-shade { background: linear-gradient(0deg, rgba(2,5,13,.94) 0, rgba(2,5,13,.72) 55%, rgba(2,5,13,.18) 100%), linear-gradient(90deg, rgba(2,5,13,.5), transparent); }
  .hero-content { width: auto; padding: 128px 23px 120px; align-self: flex-end; }
  h1 { font-size: clamp(3rem, 15vw, 4.8rem); }
  .hero-content > p { font-size: .96rem; }
  .hero-actions { align-items: stretch; flex-direction: column; max-width: 320px; }
  .hero-community-actions { max-width: 320px; display: grid; grid-template-columns: 1fr 1fr; }
  .hero-community-actions a { min-width: 0; padding: 0 12px; font-size: .65rem; }
  .hero-status { left: 23px; bottom: 29px; }
  .scroll-cue { display: none; }
  .section { padding: 92px 22px; }
  .section-index { margin-bottom: 52px; }
  .problem-heading h2, .proof-heading h2, .meet-copy h2, .product-heading h2, .agents-heading h2, .social-copy h2, .coin-heading h2, .vision h2 { font-size: 2.75rem; }
  .problem-answer { grid-template-columns: 1fr; padding: 26px; margin-top: 55px; }
  .portrait-stage { box-shadow: 9px 9px 0 #d8e8f5; }
  .flow { margin: 55px auto 85px; }
  .flow-step { width: calc(50% - 8px); }
  .outcome-grid { grid-template-columns: 1fr; margin-top: -50px; }
  .outcome-grid article + article, .outcome-grid article:nth-child(4), .outcome-grid article:nth-child(5) { border-left: 0; border-top: 1px solid #d4e0e9; }
  .outcome-grid article { min-height: 92px; }
  .demo-block { padding: 27px; box-shadow: 9px 9px 0 #dce9f3; }
  .demo-copy h3 { font-size: 1.6rem; }
  .demo-playlist { grid-template-columns: 1fr; }
  .demo-option { min-height: 0; }
  .fund-grid { grid-template-columns: 1fr; }
  .fund-grid article { min-height: auto; border-left: 0; border-top: 1px solid #203d58; }
  .fund-grid article:first-child { border-top: 0; }
  .coin-visual { margin-top: 60px; }
  .signal-lab { margin-top: 58px; padding: 20px 14px; box-shadow: 7px 7px 0 rgba(9,44,69,.42); }
  .signal-lab-heading { grid-template-columns: 1fr; gap: 17px; }
  .signal-lab-heading p { justify-self: start; }
  .signal-device { display: block; padding: 15px; }
  .device-topline { padding: 0; }
  .device-stage { height: 200px; margin: 14px 0 18px; }
  .signal-device > small { min-height: 0; }
  .launch-timeline { padding: 23px 20px; gap: 20px; }
  .launch-timeline > div { grid-template-columns: 1fr; gap: 8px; }
  .launch-timeline span { grid-row: auto; }
  .badge-showcase, .shirt-showcase { padding: 12px; box-shadow: 6px 6px 0 rgba(14,53,82,.45); }
  .asset-label { align-items: flex-start; flex-direction: column; gap: 5px; }
  .asset-label small { text-align: left; }
  .badge-showcase img, .shirt-showcase img { height: 250px; }
  .tier-card { padding: 24px 21px; }
  .tier-icon { width: 94px; height: 94px; }
  .passport-status { align-items: flex-start; padding: 18px; }
  .verify-box { grid-template-columns: 1fr; padding: 27px 22px; }
  .verify-box .pixel-button { grid-row: auto; grid-column: auto; width: 100%; }
  .verify-email { grid-column: auto; overflow-wrap: anywhere; }
  .agents { min-height: auto; }
  .agent-orbit { height: auto; margin-top: 55px; display: flex; flex-direction: column; gap: 12px; align-items: stretch; }
  .agent-core, .agent-card { position: relative; inset: auto; transform: none; width: 100%; }
  .agent-core { height: 215px; order: -1; }
  .agent-card { min-height: 80px; }
  .orbit-lines { display: none; }
  .coordination-strip { margin-top: 25px; flex-wrap: wrap; }
  .social-scene img { min-height: 340px; }
  .people-grid { grid-template-columns: 1fr; }
  .value-bridge { grid-template-columns: 1fr; gap: 24px; padding: 25px; margin-top: 65px; }
  .value-bridge > i { display: none; }
  .vision { min-height: 790px; padding: 105px 22px; }
  .decision-logo { width: 100%; margin: 35px auto; }
  .vision-actions { flex-direction: column; }
  .dmomo-guide { left: 13px; bottom: 13px; }
  .guide-character { width: 58px; height: 58px; flex-basis: 58px; }
  .guide-bubble { max-width: min(240px, calc(100vw - 94px)); font-size: .72rem; }
  .easter-card { padding: 36px 24px 30px; }
  .easter-card h2 { font-size: 1.55rem; }
  footer { grid-template-columns: 1fr; justify-items: center; gap: 20px; padding: 36px 20px; }
  .footer-socials { justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
