:root {
  --ink: #080b10;
  --ink-2: #0d1118;
  --panel: #111720;
  --panel-2: #161d27;
  --paper: #f3efe6;
  --muted: #9aa5b4;
  --dim: #596575;
  --line: rgba(173, 196, 214, .16);
  --line-strong: rgba(173, 196, 214, .3);
  --coral: #ff655c;
  --coral-dark: #d74441;
  --cyan: #48dce5;
  --amber: #f3bd64;
  --header-h: 78px;
  --pad: clamp(24px, 4.7vw, 86px);
  --display: "Bahnschrift Condensed", "Arial Narrow", "Roboto Condensed", sans-serif;
  --body: "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; background: var(--ink); color: var(--paper); font-family: var(--body); overflow-x: hidden; }
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 20; opacity: .12; background-image: radial-gradient(circle at 12% 21%, rgba(255,255,255,.17) 0 1px, transparent 1.5px), radial-gradient(circle at 72% 63%, rgba(255,255,255,.11) 0 1px, transparent 1.5px); background-size: 17px 19px, 23px 29px; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
::selection { color: var(--ink); background: var(--cyan); }

.skip-link { position: fixed; left: 16px; top: -80px; z-index: 1000; background: var(--paper); color: var(--ink); padding: 12px 16px; font-weight: 800; }
.skip-link:focus { top: 12px; }
.cursor-light { position: fixed; z-index: 0; width: 520px; height: 520px; border-radius: 50%; pointer-events: none; transform: translate(-50%, -50%); opacity: .13; background: radial-gradient(circle, rgba(72,220,229,.32), transparent 68%); transition: opacity .2s; }

.site-header { position: fixed; inset: 0 0 auto; height: var(--header-h); z-index: 100; display: grid; grid-template-columns: auto 1fr auto; align-items: center; padding: 0 var(--pad); border-bottom: 1px solid transparent; transition: background .25s, border-color .25s, height .25s; }
.site-header.scrolled { height: 66px; background: rgba(8,11,16,.94); border-color: var(--line); backdrop-filter: blur(18px); }
.brand, .footer-brand { display: inline-flex; align-items: center; gap: 12px; }
.brand-mark { position: relative; display: grid; place-items: center; width: 39px; height: 39px; background: var(--coral); color: var(--ink); box-shadow: 7px 7px 0 rgba(255,101,92,.15); transform: rotate(-2deg); }
.brand-mark::after { content: ""; position: absolute; inset: 4px; border: 1px solid rgba(8,11,16,.32); }
.brand-mark b { z-index: 1; font: 900 13px/1 var(--body); letter-spacing: -.05em; }
.brand-mark.mini { width: 30px; height: 30px; box-shadow: none; }
.brand-copy, .footer-brand > div { display: grid; gap: 1px; }
.brand-copy strong, .footer-brand strong { font: 900 15px/1 var(--body); letter-spacing: .07em; }
.brand-copy small, .footer-brand small { color: var(--muted); font: 700 8px/1.2 var(--body); letter-spacing: .21em; }
.main-nav { justify-self: center; display: flex; gap: clamp(22px, 3vw, 54px); }
.main-nav a, .header-actions a, footer nav a { color: #c5ccd4; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.main-nav a { position: relative; padding: 10px 0; }
.main-nav a::after { content: ""; position: absolute; inset: auto 100% 3px 0; height: 2px; background: var(--coral); transition: right .2s; }
.main-nav a:hover::after, .main-nav a:focus-visible::after { right: 0; }
.header-actions { display: flex; align-items: center; gap: 24px; }
.text-link { color: var(--paper); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.text-link:hover { color: var(--cyan); }
.menu-button { display: none; width: 42px; height: 42px; border: 1px solid var(--line); background: var(--ink-2); }
.menu-button span { display: block; width: 18px; height: 1px; margin: 5px auto; background: var(--paper); }

.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: space-between; gap: 26px; padding: 0 22px; border: 1px solid var(--line-strong); font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; transition: transform .18s, background .18s, color .18s, border-color .18s; }
.button:hover, .button:focus-visible { transform: translateY(-3px); }
.button-primary { min-width: 226px; color: var(--ink); background: var(--coral); border-color: var(--coral); box-shadow: 9px 9px 0 rgba(255,101,92,.12); }
.button-primary:hover { background: #ff7a72; }
.button-quiet, .button-ghost { background: rgba(8,11,16,.45); border-color: var(--line-strong); }
.button-quiet:hover, .button-ghost:hover { border-color: var(--cyan); color: var(--cyan); }
.button-small { min-height: 38px; min-width: 0; padding: 0 15px; font-size: 9px; }
.button-light { color: var(--ink); background: var(--paper); border-color: var(--paper); min-width: min(100%, 330px); }
.button-light:hover { background: white; }

.hero { position: relative; min-height: max(850px, 100vh); overflow: hidden; background: #090d13; display: grid; align-items: center; padding: calc(var(--header-h) + 62px) var(--pad) 154px; }
.hero-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; z-index: 0; }
.hero-shade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(8,11,16,.99) 0%, rgba(8,11,16,.93) 27%, rgba(8,11,16,.3) 60%, rgba(8,11,16,.12) 100%), linear-gradient(0deg, rgba(8,11,16,.84), transparent 36%); }
.hero-grid { position: absolute; inset: 0; z-index: 2; opacity: .19; background-image: linear-gradient(rgba(72,220,229,.16) 1px, transparent 1px), linear-gradient(90deg, rgba(72,220,229,.16) 1px, transparent 1px); background-size: 68px 68px; mask-image: linear-gradient(90deg, black, transparent 57%); }
.hero-copy { position: relative; z-index: 4; width: min(710px, 53vw); padding-top: 10px; }
.eyebrow, .section-number, .kicker { font-size: 9px; font-weight: 900; letter-spacing: .23em; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 29px; color: #d4dbe3; }
.pulse-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--coral); box-shadow: 0 0 0 0 rgba(255,101,92,.65); animation: pulse 1.8s infinite; }
@keyframes pulse { 60% { box-shadow: 0 0 0 10px rgba(255,101,92,0); } 100% { box-shadow: 0 0 0 0 rgba(255,101,92,0); } }
.hero h1, h2, .market-hero h1, .legal-hero h1 { margin: 0; font-family: var(--display); font-weight: 900; letter-spacing: -.045em; line-height: .79; text-transform: uppercase; }
.hero h1 { font-size: clamp(92px, 11.7vw, 198px); }
.hero h1 em, h2 em, .market-hero h1 em { color: var(--coral); font-style: normal; }
.hero-lede { max-width: 610px; margin: 30px 0 28px; color: #c7cdd5; font-size: clamp(17px, 1.35vw, 23px); line-height: 1.5; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-note { color: var(--dim); margin: 17px 0 0; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.hero-signal { position: absolute; z-index: 5; right: var(--pad); bottom: 132px; width: min(510px, 34vw); padding: 18px; background: rgba(7,11,16,.74); border: 1px solid rgba(72,220,229,.25); backdrop-filter: blur(12px); box-shadow: 20px 30px 70px rgba(0,0,0,.4); }
.signal-head, .signal-foot, .console-top, .console-status, .room-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 8px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.signal-head span { color: var(--cyan); }
.signal-head i { color: var(--muted); font-style: normal; }
.signal-head b { color: var(--amber); }
.signal-context { display: flex; flex-wrap: wrap; gap: 7px; margin: 17px 0 13px; }
.signal-context span { padding: 6px 8px; background: rgba(72,220,229,.07); border: 1px solid var(--line); font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.hero-signal p { min-height: 57px; margin: 0 0 16px; color: var(--paper); font: 600 18px/1.45 var(--body); }
.signal-foot { padding-top: 12px; border-top: 1px solid var(--line); color: var(--muted); }
.signal-foot i { color: var(--coral); font-style: normal; }

.hero-rail { position: absolute; inset: auto 0 0; z-index: 6; min-height: 106px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); background: rgba(8,11,16,.86); backdrop-filter: blur(18px); }
.hero-rail > div { position: relative; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; gap: 2px 14px; align-content: center; padding: 20px clamp(18px, 2.7vw, 48px); border-right: 1px solid var(--line); }
.hero-rail strong { grid-row: 1 / 3; color: var(--coral); font: 900 20px/1 var(--display); }
.hero-rail span { font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.hero-rail small { color: var(--muted); font-size: 10px; line-height: 1.35; }

.section-pad { position: relative; padding: clamp(96px, 10vw, 176px) var(--pad); border-top: 1px solid var(--line); }
.section-number { color: var(--dim); margin-bottom: 56px; }
.kicker { color: var(--cyan); margin: 0 0 20px; }
h2 { font-size: clamp(62px, 8.2vw, 138px); }
.statement { background: linear-gradient(150deg, var(--ink) 0%, #0b1119 55%, #081316 100%); }
.statement-grid, .performance-grid { display: grid; grid-template-columns: minmax(0,.88fr) minmax(560px,1.12fr); gap: clamp(50px, 7vw, 120px); align-items: center; }
.statement-copy > p:not(.kicker), .section-heading > p:not(.kicker), .rooms-copy > p:not(.kicker), .performance-copy > p:not(.kicker), .memory-copy > p:not(.kicker) { color: #aeb8c4; font-size: 17px; line-height: 1.7; max-width: 660px; }
.feature-list { margin: 34px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.feature-list li { display: grid; grid-template-columns: 140px 1fr; gap: 20px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.feature-list b { color: var(--paper); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.feature-list span { color: var(--muted); font-size: 12px; }

.field-console { min-height: 650px; background: #0a0f15; border: 1px solid var(--line-strong); box-shadow: 30px 34px 0 rgba(0,0,0,.2), 0 38px 100px rgba(0,0,0,.35); overflow: hidden; }
.console-top { height: 54px; justify-content: flex-start; padding: 0 17px; border-bottom: 1px solid var(--line); background: #0c1118; }
.console-mark { display: grid; place-items: center; width: 28px; height: 28px; background: var(--coral); color: var(--ink); }
.console-top strong { margin-right: auto; }
.console-top i { color: var(--cyan); font-style: normal; }
.console-viewport { position: relative; height: 455px; overflow: hidden; background: radial-gradient(circle at 63% 34%, rgba(72,220,229,.2), transparent 26%), radial-gradient(circle at 25% 76%, rgba(255,101,92,.16), transparent 23%), linear-gradient(145deg,#111d22,#080d12 60%); }
.console-viewport::before { content: ""; position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(72,220,229,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(72,220,229,.15) 1px,transparent 1px); background-size: 42px 42px; transform: perspective(500px) rotateX(48deg) scale(1.7) translateY(36%); }
.terrain span { position: absolute; width: 210px; height: 95px; border-radius: 50%; border: 1px solid rgba(72,220,229,.26); transform: rotate(-14deg); }
.terrain span:nth-child(1){left:12%;top:20%}.terrain span:nth-child(2){right:8%;top:13%;width:260px}.terrain span:nth-child(3){left:25%;bottom:9%;width:350px}.terrain span:nth-child(4){right:26%;top:46%;width:130px}
.reticle { position: absolute; left: 58%; top: 42%; width: 94px; height: 94px; border: 1px solid rgba(243,239,230,.45); border-radius: 50%; transform: translate(-50%,-50%); }
.reticle::before,.reticle::after{content:"";position:absolute;background:rgba(243,239,230,.45)}
.reticle::before{left:50%;top:-16px;width:1px;height:126px}.reticle::after{left:-16px;top:50%;width:126px;height:1px}.reticle i{position:absolute;inset:38%;border:2px solid var(--coral);border-radius:50%}
.context-card { position: absolute; min-width: 160px; padding: 12px 13px; background: rgba(8,11,16,.83); border-left: 2px solid var(--cyan); backdrop-filter: blur(8px); }
.context-card small { display:block;color:var(--muted);font-size:7px;font-weight:900;letter-spacing:.15em}.context-card strong{display:block;margin:5px 0 2px;font:900 17px/1 var(--display);letter-spacing:.04em}.context-card span{color:#aab5c1;font-size:9px;font-weight:700}
.context-primary{left:20px;top:22px}.context-loadout{right:18px;top:24px}.context-gate{right:18px;bottom:18px;border-left-color:var(--coral)}
.console-output { min-height: 91px; display: grid; grid-template-columns: 86px 1fr auto; gap: 13px; align-items: center; padding: 17px; border-top: 1px solid var(--line); }
.console-output span,.console-output b{color:var(--muted);font-size:8px;letter-spacing:.13em}.console-output p{margin:0;font-size:15px;line-height:1.45}.console-output b{color:var(--amber)}
.console-status { height: 49px; justify-content: flex-start; gap: 24px; padding: 0 17px; border-top: 1px solid var(--line); color:var(--dim); }
.console-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--cyan);margin-right:5px}

.character-section { overflow: hidden; background: #0a0d12; }
.character-section::after { content:"";position:absolute;right:-18vw;top:5%;width:54vw;height:54vw;border:1px solid rgba(72,220,229,.09);border-radius:50%;box-shadow:0 0 0 90px rgba(72,220,229,.025),0 0 0 180px rgba(72,220,229,.018);pointer-events:none; }
.section-heading { max-width: 1120px; }
.section-heading > p:not(.kicker){margin-top:30px;max-width:760px}
.character-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.35fr 1fr 1fr; gap: 14px; margin-top: 70px; }
.character-card { position: relative; min-height: 530px; overflow: hidden; background: var(--panel); border: 1px solid var(--line); }
.character-featured { grid-row: span 2; min-height: 760px; }
.character-card:nth-child(4) { grid-column: 2 / 4; min-height: 380px; }
.character-portrait { position: absolute; inset: 0; background-color: #111821; background-repeat: no-repeat; filter: saturate(.75) contrast(1.08); transition: transform .5s, filter .5s; }
.character-card:hover .character-portrait { transform: scale(1.025); filter: saturate(1) contrast(1.06); }
.portrait-correspondent { background-image: linear-gradient(0deg,rgba(8,11,16,.98),rgba(8,11,16,.02) 70%),url('/assets/field-correspondent-atlas.png'); background-size: 100%, 200% 200%; background-position: center, 0 0; }
.portrait-mom { background-image: linear-gradient(0deg,rgba(8,11,16,.99),rgba(8,11,16,.06) 70%),url('/assets/character-atlas.png'); background-size: 100%, 300% 200%; background-position: center, 0 0; }
.portrait-nurse { background-image: linear-gradient(0deg,rgba(8,11,16,.99),rgba(8,11,16,.06) 70%),url('/assets/character-atlas.png'); background-size: 100%, 300% 200%; background-position: center, 50% 0; }
.portrait-pilgrim { background-image: linear-gradient(90deg,rgba(8,11,16,.08),rgba(8,11,16,.98) 70%),url('/assets/character-atlas.png'); background-size: 100%, 300% 200%; background-position: center, 100% 0; }
.character-copy { position: absolute; inset: auto 0 0; z-index: 2; padding: 26px; }
.character-copy small { color:var(--coral);font-size:8px;font-weight:900;letter-spacing:.18em}.character-copy h3{margin:7px 0 10px;font:900 clamp(34px,3.3vw,62px)/.9 var(--display);letter-spacing:-.03em}.character-copy p{max-width:520px;margin:0 0 16px;color:#acb5c0;font-size:13px;line-height:1.55}.character-copy span{color:var(--dim);font-size:8px;font-weight:900;letter-spacing:.12em}
.character-card:nth-child(4) .character-copy { left: 49%; }
.inline-link { display:inline-flex;gap:16px;margin-top:28px;padding-bottom:7px;border-bottom:1px solid var(--line-strong);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.inline-link:hover{color:var(--cyan)}

.memory-section { background: var(--paper); color: var(--ink); }
.memory-panel { display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,9vw,150px);align-items:center; }
.memory-section .section-number { color:#7e858d}.memory-section .kicker{color:#257c84}.memory-section h2 em{color:var(--coral-dark)}.memory-copy > p:not(.kicker){color:#4f5963}.memory-rule{display:grid;grid-template-columns:130px 1fr;gap:24px;margin-top:32px;padding-top:23px;border-top:1px solid #c9c5bc}.memory-rule span{font-size:10px;font-weight:900;letter-spacing:.13em}.memory-rule p{margin:0;color:#56606a;font-size:13px;line-height:1.55}
.memory-timeline { position:relative;padding-left:38px;border-left:1px solid #b9b5ac; }
.memory-timeline::before { content:"";position:absolute;left:-5px;top:0;width:9px;height:9px;border-radius:50%;background:var(--coral-dark);box-shadow:0 119px 0 var(--coral-dark),0 238px 0 var(--coral-dark); }
.memory-timeline article { min-height:119px;padding:0 0 25px;border-bottom:1px solid #d1cdc5; }
.memory-timeline article + article { padding-top:24px; }
.memory-timeline time{color:#858b91;font-size:8px;font-weight:900;letter-spacing:.16em}.memory-timeline strong{display:block;margin:7px 0;font:900 24px/1 var(--display)}.memory-timeline p{margin:0;color:#535c65;font-size:13px;line-height:1.5}

.rooms-section { display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(55px,8vw,130px);align-items:center;background:radial-gradient(circle at 78% 38%,rgba(72,220,229,.08),transparent 32%),#080b10; }
.rooms-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.room-window{background:#0d1219;border:1px solid var(--line-strong);box-shadow:22px 28px 0 rgba(255,101,92,.05),0 30px 100px rgba(0,0,0,.35)}
.room-title{height:72px;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid var(--line)}.room-title div{display:grid;gap:3px}.room-title strong{font-size:11px;letter-spacing:.1em}.room-title small{color:var(--dim);font-size:7px;letter-spacing:.14em}.room-title i{margin-left:auto;color:var(--cyan);font-size:8px;font-style:normal;font-weight:900;letter-spacing:.12em}
.room-members{display:flex;gap:10px;padding:16px 18px;border-bottom:1px solid var(--line)}.room-members>span,.room-members button{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--line);background:#121923;color:#cbd2da;font-size:10px;font-weight:900}.room-members>span small{display:block;margin-top:2px;color:var(--dim);font-size:6px;letter-spacing:.08em}.room-members>span.active{border-color:var(--coral);box-shadow:inset 0 -2px var(--coral)}.room-members button{font-size:18px;color:var(--cyan)}
.room-messages{min-height:340px;padding:24px 20px}.room-messages article{position:relative;max-width:78%;padding:13px 15px;margin-bottom:13px;background:#151c25;border-left:2px solid #445363}.room-messages article:nth-child(2){margin-left:auto;border-left-color:var(--cyan)}.room-messages .ai-message{max-width:88%;border-left-color:var(--coral);background:#181617}.room-messages b{color:var(--muted);font-size:7px;letter-spacing:.13em}.room-messages p{margin:5px 34px 0 0;font-size:13px;line-height:1.45}.room-messages time{position:absolute;right:12px;top:13px;color:var(--dim);font-size:7px}
.room-compose{height:58px;display:flex;align-items:center;margin:0 18px 14px;padding-left:15px;border:1px solid var(--line);background:#090d12;color:var(--dim);font-size:11px}.room-compose button{margin-left:auto;width:56px;height:56px;border:0;border-left:1px solid var(--line);background:var(--coral);color:var(--ink);font-size:19px}.room-controls{height:38px;justify-content:flex-start;gap:22px;padding:0 18px;border-top:1px solid var(--line);color:var(--dim)}

.performance-section { background: linear-gradient(165deg,#0e141c,#080b10 62%); }
.performance-copy h2 { font-size:clamp(58px,7.2vw,116px)}.spec-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line-strong)}.spec-grid article{min-height:220px;padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.spec-grid article:nth-child(even){border-right:0}.spec-grid article:nth-last-child(-n+2){border-bottom:0}.spec-grid b{display:block;color:var(--coral);font:900 clamp(44px,4.8vw,78px)/1 var(--display)}.spec-grid span{display:block;margin:8px 0 12px;font-size:9px;font-weight:900;letter-spacing:.14em}.spec-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.trust-strip{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:65px;padding-top:22px;border-top:1px solid var(--line);color:var(--dim);font-size:8px;font-weight:900;letter-spacing:.13em}.trust-strip a{margin-left:auto;color:var(--paper)}.trust-strip a:hover{color:var(--cyan)}

.download-section { position:relative;min-height:760px;display:grid;place-items:center start;overflow:hidden;padding:110px var(--pad);background:#ff655c;color:var(--ink)}
.download-art{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,101,92,.99) 0%,rgba(255,101,92,.88) 42%,rgba(255,101,92,.18) 70%),url('/assets/agamebuddy-hero-v2.png');background-size:cover;background-position:center}
.download-copy{position:relative;z-index:2;max-width:750px}.download-section .eyebrow{color:var(--ink)}.download-section .pulse-dot{background:var(--ink)}.download-section h2{font-size:clamp(72px,9.4vw,156px)}.download-section h2 em{color:var(--paper)}.download-copy p{max-width:590px;font-size:16px;line-height:1.6}.download-copy small{display:block;margin-top:14px;font-size:8px;font-weight:900;letter-spacing:.13em}

footer { position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:50px;padding:55px var(--pad) 28px;background:#06080c;border-top:1px solid var(--line)}
footer nav{display:flex;flex-wrap:wrap;gap:25px;align-items:center}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:22px;border-top:1px solid var(--line);color:#495461;font-size:8px;font-weight:800;letter-spacing:.13em}

.reveal { opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.reveal.visible,.no-js .reveal{opacity:1;transform:none}

/* Legal, marketplace and error routes */
.legal-hero { min-height:560px;padding:calc(var(--header-h) + 100px) var(--pad) 80px;display:grid;align-content:end;background:linear-gradient(135deg,#101721,#080b10 60%);border-bottom:1px solid var(--line)}
.legal-hero h1{font-size:clamp(72px,10vw,160px)}.legal-body{max-width:950px;margin:0 auto;padding:80px var(--pad) 120px;color:#b2bcc8}.legal-note{padding:20px;border-left:3px solid var(--coral);background:var(--panel);color:var(--paper)!important}.legal-body h2{margin:48px 0 12px;color:var(--paper);font:900 28px/1 var(--display);letter-spacing:.03em}.legal-body p,.legal-body li{font-size:15px;line-height:1.75}.legal-body a{color:var(--cyan)}
.market-hero{min-height:100vh;display:grid;grid-template-columns:1fr .75fr;align-items:center;gap:80px;padding:calc(var(--header-h) + 70px) var(--pad) 80px;background:radial-gradient(circle at 78% 50%,rgba(72,220,229,.12),transparent 24%),linear-gradient(135deg,#0d121a,#080b10)}.market-hero h1{font-size:clamp(72px,9vw,150px)}.market-hero p{max-width:650px;color:var(--muted);font-size:17px;line-height:1.65}.market-orbit{justify-self:center;display:grid;place-items:center;width:min(34vw,440px);height:min(34vw,440px);border:1px solid var(--line-strong);border-radius:50%;box-shadow:0 0 0 55px rgba(72,220,229,.03),0 0 0 110px rgba(72,220,229,.02)}.market-orbit b{display:grid;place-items:center;width:95px;height:95px;background:var(--coral);color:var(--ink);font:900 28px/1 var(--display)}

@media (max-width: 1180px) {
  .main-nav{gap:22px}.header-actions .text-link{display:none}.hero-copy{width:62vw}.hero-signal{width:38vw}.statement-grid,.performance-grid{grid-template-columns:1fr;}.field-console{max-width:900px}.character-grid{grid-template-columns:1fr 1fr}.character-featured{grid-row:auto;grid-column:1/-1;min-height:690px}.character-card:nth-child(4){grid-column:auto;min-height:530px}.character-card:nth-child(4) .character-copy{left:0}.rooms-section{grid-template-columns:1fr}.rooms-copy{max-width:800px}.room-window{max-width:900px;width:100%}.memory-panel{gap:60px}
}

@media (max-width: 820px) {
  :root{--header-h:66px;--pad:22px}.site-header{height:66px;background:rgba(8,11,16,.94);border-bottom-color:var(--line)}.main-nav{position:absolute;left:0;right:0;top:66px;display:none;flex-direction:column;gap:0;padding:16px 22px 25px;background:#090d12;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav a{padding:14px 0}.header-actions{display:none}.menu-button{display:block;justify-self:end}.brand-copy small{display:none}.cursor-light{display:none}
  .hero{min-height:940px;padding-top:120px;align-items:start}.hero-art{object-position:63% top;opacity:.72}.hero-shade{background:linear-gradient(180deg,rgba(8,11,16,.25),rgba(8,11,16,.84) 42%,rgba(8,11,16,.99) 73%)}.hero-grid{display:none}.hero-copy{width:100%;padding-top:290px}.hero h1{font-size:clamp(80px,24vw,130px)}.hero-lede{font-size:16px}.hero-signal{position:relative;right:auto;bottom:auto;width:100%;margin:35px 0 130px;align-self:end}.hero-rail{grid-template-columns:1fr 1fr}.hero-rail>div{padding:16px}.hero-rail small{display:none}
  .section-pad{padding-top:95px;padding-bottom:95px}.section-number{margin-bottom:35px}h2{font-size:clamp(58px,18vw,96px)}.statement-grid,.performance-grid,.memory-panel,.rooms-section{grid-template-columns:1fr;gap:55px}.field-console{min-height:570px}.console-viewport{height:390px}.context-card{min-width:130px}.console-output{grid-template-columns:60px 1fr}.console-output b{display:none}.console-status span:nth-child(n+2){display:none}
  .character-grid{grid-template-columns:1fr}.character-featured,.character-card,.character-card:nth-child(4){grid-column:auto;min-height:590px}.character-card:nth-child(4) .character-copy{left:0}.portrait-pilgrim{background-image:linear-gradient(0deg,rgba(8,11,16,.99),rgba(8,11,16,.06) 70%),url('/assets/character-atlas.png')}.memory-timeline{margin-left:8px}.rooms-actions{align-items:flex-start;flex-direction:column}.room-window{min-width:0}.room-messages{min-height:300px}.room-controls span:nth-child(n+3){display:none}.spec-grid{grid-template-columns:1fr}.spec-grid article{border-right:0!important;border-bottom:1px solid var(--line)!important}.spec-grid article:last-child{border-bottom:0!important}.trust-strip a{width:100%;margin-left:0}.download-section{min-height:700px}.download-art{background-image:linear-gradient(180deg,rgba(255,101,92,.95),rgba(255,101,92,.99)),url('/assets/agamebuddy-hero-v2.png')}.download-section h2{font-size:clamp(64px,19vw,105px)}
  footer{grid-template-columns:1fr}footer nav{gap:17px}.footer-bottom{display:grid;gap:8px}.market-hero{grid-template-columns:1fr;padding-top:130px}.market-orbit{display:none}
}

@media (max-width: 520px) {
  .hero{min-height:980px}.hero-copy{padding-top:250px}.hero-actions,.hero-actions .button{width:100%}.hero-rail{grid-template-columns:1fr 1fr}.hero-rail strong{display:none}.hero-rail>div{display:block}.hero-rail span{font-size:8px}.signal-context span:nth-child(2){display:none}.field-console{min-height:510px}.console-viewport{height:350px}.context-loadout{top:auto;bottom:18px;right:auto;left:18px}.context-gate{display:none}.room-members span:nth-child(3){display:none}.room-messages article{max-width:94%}.memory-rule{grid-template-columns:1fr}.character-copy{padding:20px}.character-card{min-height:520px}.footer-brand{align-items:flex-start}
}

@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto}.pulse-dot{animation:none}.reveal{opacity:1;transform:none;transition:none}.button,.character-portrait{transition:none}.cursor-light{display:none}
}

/* Approved marketplace */
.market-page{background:#080b10}.market-page main{padding-top:76px}.market-intro{min-height:720px;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center;padding:110px var(--pad);background:radial-gradient(circle at 77% 32%,rgba(85,219,227,.12),transparent 27%),linear-gradient(135deg,#090b10 30%,#121924)}
.market-intro h1{font-size:clamp(70px,9vw,150px);line-height:.8;letter-spacing:-.075em;margin:25px 0 0}.market-intro h1 em{color:var(--coral);font-style:normal}.market-intro-copy>p{font-size:20px;line-height:1.75;color:#b4bec9;max-width:650px}.market-trust{display:grid;grid-template-columns:110px 1fr;gap:18px;border-top:1px solid var(--line-strong);padding-top:24px;margin-top:35px}.market-trust b{font-size:10px;color:var(--cyan);letter-spacing:.16em}.market-trust span{font-size:13px;line-height:1.65;color:#d4dae1}
.market-catalog{padding:110px var(--pad);background:#f0ede5;color:var(--ink)}.market-toolbar{display:flex;justify-content:space-between;align-items:end;gap:40px}.market-toolbar h2{font-size:clamp(58px,7vw,110px);line-height:.84;letter-spacing:-.07em;margin:18px 0}.market-toolbar h2 em{font-style:normal;color:var(--coral)}.market-filters{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.market-filters button{border:1px solid rgba(9,11,15,.22);background:transparent;color:var(--ink);padding:11px 13px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.market-filters button.active{background:var(--ink);color:var(--paper)}.catalog-status{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin:22px 0;color:#5f6872}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.catalog-card{min-height:490px;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(9,11,15,.14);padding:18px;box-shadow:0 14px 35px rgba(9,11,15,.06);animation:catalog-rise .5s both;animation-delay:var(--delay)}@keyframes catalog-rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}.catalog-card-top,.catalog-meta{display:flex;justify-content:space-between;gap:8px;font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.catalog-card-top b{color:var(--coral)}.catalog-glyph{height:190px;margin:18px 0 24px;background:#0c1016;position:relative;display:grid;place-items:center;overflow:hidden}.catalog-glyph:before,.catalog-glyph:after,.catalog-glyph i{content:"";position:absolute;inset:20%;border:1px solid rgba(85,219,227,.4);transform:rotate(45deg)}.catalog-glyph:after{inset:32%;border-color:rgba(255,101,92,.5);animation:market-spin 14s linear infinite reverse}.catalog-glyph i{inset:8%;border-color:rgba(242,239,232,.1);animation:market-spin 28s linear infinite}.catalog-glyph>b{font-size:38px;letter-spacing:-.08em;z-index:1;color:var(--paper)}@keyframes market-spin{to{transform:rotate(405deg)}}.catalog-card h3{font-size:27px;letter-spacing:-.04em;margin:0 0 8px}.catalog-card>strong{font-size:11px;line-height:1.4;color:#39434e;min-height:32px}.catalog-card>p{color:#69727c;font-size:12px;line-height:1.65;flex:1}.catalog-meta{border-top:1px solid rgba(9,11,15,.14);padding-top:13px;color:#6f7882}.catalog-meta span:last-child{color:#128a8f}.catalog-error{grid-column:1/-1;min-height:230px}.market-sync{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding:120px var(--pad);background:#0b0f15}.market-sync h2{font-size:clamp(54px,6vw,100px);line-height:.86;letter-spacing:-.065em;margin:22px 0}.market-sync h2 em{color:var(--cyan);font-style:normal}.market-sync p{font-size:17px;color:#aeb8c4;line-height:1.75;margin-bottom:30px}
@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-intro{grid-template-columns:1fr}.market-toolbar{display:block}.market-filters{justify-content:flex-start}.market-sync{grid-template-columns:1fr}}
@media(max-width:650px){.market-intro,.market-catalog,.market-sync{padding:85px 20px}.market-intro{min-height:auto}.catalog-grid{grid-template-columns:1fr}.catalog-card{min-height:430px}.market-trust{grid-template-columns:1fr}.market-filters button{flex:1}.market-intro h1{font-size:62px}}
