:root {
  --ink: #09090d;
  --navy: #171832;
  --lavender: #c9c8ff;
  --periwinkle: #9da8ff;
  --offwhite: #f7f5ff;
  --cyan: #18e7dc;
  --aqua: #1bdcc8;
  --blue: #5c83e8;
  --violet: #8c5be8;
  --purple: #a84cea;
  --magenta: #e24bdc;
  --gold: #f3c63f;
  --peach: #f39a70;
  --line: 3px solid var(--ink);
  --header-h: 72px;
  --mono: "IBM Plex Mono", "Courier New", monospace;
  --display: "Barlow Condensed", Impact, "Arial Narrow", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--header-h); }
body { margin: 0; color: var(--ink); background: #b9bfff; font-family: var(--mono); overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
img { display: block; max-width: 100%; }
.pixel-art { image-rendering: pixelated; }
::selection { color: var(--offwhite); background: var(--purple); }

.skip-link { position: fixed; left: 10px; top: -80px; background: var(--offwhite); border: var(--line); padding: 10px 14px; z-index: 9999; font-weight: 700; }
.skip-link:focus { top: 10px; }

.site-header {
  position: fixed; z-index: 1000; top: 0; left: 0; right: 0; height: var(--header-h);
  display: grid; grid-template-columns: minmax(210px, 1fr) auto minmax(210px, 1fr); align-items: center; gap: 28px;
  padding: 8px clamp(16px, 3vw, 48px);
  background: rgba(245,244,255,.94); border-bottom: var(--line); box-shadow: 0 4px 0 rgba(24,231,220,.3);
}
.brand-link { width: min(360px, 100%); min-width: 0; }
.header-wordmark { width: 100%; height: 44px; object-fit: contain; object-position: left center; }
.main-nav { display: flex; gap: 6px; }
.main-nav a { font-family: var(--display); font-weight: 900; letter-spacing: .055em; font-size: 18px; padding: 9px 14px; border: 2px solid transparent; }
.main-nav a:hover, .main-nav a:focus-visible { border-color: var(--ink); background: white; transform: translate(-2px,-2px); box-shadow: 3px 3px 0 var(--cyan); }
.header-actions { display: flex; justify-content: flex-end; align-items: center; }
.header-socials, .footer-socials { display: flex; gap: 8px; }
.header-socials a, .footer-socials a { width: 38px; height: 38px; border: 2px solid var(--ink); background: #0a0b14; box-shadow: 2px 2px 0 var(--magenta); transition: transform .12s ease, box-shadow .12s ease; }
.header-socials a:hover, .header-socials a:focus-visible, .footer-socials a:hover, .footer-socials a:focus-visible { transform: translate(-2px,-2px); box-shadow: 4px 4px 0 var(--cyan); }
.header-socials img, .footer-socials img { width: 100%; height: 100%; object-fit: cover; image-rendering: pixelated; }
.menu-toggle { display: none; width: 42px; height: 38px; padding: 8px; background: var(--offwhite); border: var(--line); }
.menu-toggle span { display: block; height: 3px; background: var(--ink); margin: 4px 0; }
.mobile-menu { position: absolute; right: 14px; top: 66px; background: var(--offwhite); border: var(--line); box-shadow: 6px 6px 0 var(--violet); padding: 8px; }
.mobile-menu a { display: block; padding: 10px 16px; font-family: var(--display); font-size: 20px; font-weight: 900; }

main { position: relative; }
.snap-section { position: relative; min-height: 100svh; overflow: hidden; }
.section-shell { width: min(1480px, calc(100% - 48px)); margin: 0 auto; position: relative; z-index: 2; }
.section-kicker, .eyebrow, .micro-label { font-family: var(--mono); font-weight: 700; letter-spacing: .12em; font-size: 12px; text-transform: uppercase; }
.section-kicker { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 12px; padding: 7px 10px; border: 2px solid var(--ink); background: var(--offwhite); box-shadow: 4px 4px 0 var(--cyan); }
.section-kicker::before { content: ""; width: 8px; height: 8px; background: var(--magenta); box-shadow: 10px 0 0 var(--cyan); margin-right: 10px; }
h1,h2,h3,p { margin-top: 0; }
h1,h2,h3 { font-family: var(--display); text-transform: uppercase; line-height: .88; }
h2 { font-size: clamp(58px, 7vw, 118px); letter-spacing: -.04em; margin-bottom: 26px; }
h2 em { font-style: normal; color: var(--purple); text-shadow: 3px 3px 0 var(--ink); }

/* HERO */
.hero { background-image: url("assets/images/hero-bg-desktop.webp"); background-size: cover; background-position: center; padding-top: var(--header-h); display: flex; align-items: stretch; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(204,205,255,.98) 0%, rgba(220,218,255,.91) 32%, rgba(216,213,255,.22) 55%, rgba(255,255,255,0) 73%); z-index: 1; }
.hero-grid { min-height: calc(100svh - var(--header-h)); display: grid; grid-template-columns: minmax(0, .96fr) minmax(420px, .84fr); gap: clamp(20px,4vw,70px); align-items: center; }
.hero-copy { padding: 58px 0 60px; max-width: 780px; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; background: var(--offwhite); border: 2px solid var(--ink); padding: 8px 11px; box-shadow: 4px 4px 0 var(--cyan); margin-bottom: 18px; }
.status-dot { width: 9px; height: 9px; background: #19d97b; border: 2px solid var(--ink); animation: blink 1.1s steps(1,end) infinite; }
.hero h1 { font-size: clamp(78px, 8.7vw, 154px); letter-spacing: -.055em; margin-bottom: 12px; text-shadow: 4px 4px 0 var(--offwhite); }
.hero h1 span { display: block; }
.hero h1 span:last-child { color: var(--offwhite); -webkit-text-stroke: 3px var(--ink); text-shadow: 5px 5px 0 var(--cyan), 8px 8px 0 var(--purple); }
.ticker-badge { display: inline-block; font-family: var(--display); font-size: 28px; font-weight: 900; background: var(--ink); color: var(--offwhite); border: 3px solid var(--offwhite); outline: 3px solid var(--ink); padding: 6px 18px; box-shadow: 5px 5px 0 var(--magenta); margin: 8px 0 18px; }
.hero-tagline { font-family: var(--display); font-size: clamp(28px, 3vw, 48px); line-height: 1; font-weight: 900; margin: 10px 0 3px; }
.hero-subline { font-size: 12px; font-weight: 700; letter-spacing: .11em; margin-bottom: 24px; }
.hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 18px; }
.pixel-btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; padding: 12px 22px; border: var(--line); font-family: var(--display); font-size: 22px; font-weight: 900; letter-spacing: .04em; transition: transform .12s ease, box-shadow .12s ease; }
.pixel-btn-primary { background: var(--offwhite); box-shadow: 5px 5px 0 var(--cyan); }
.pixel-btn-dark { color: var(--offwhite); background: var(--ink); box-shadow: 5px 5px 0 var(--magenta); }
.pixel-btn:hover, .pixel-btn:focus-visible { transform: translate(-3px,-3px); box-shadow: 8px 8px 0 var(--violet); }
.pixel-btn.is-disabled, [data-link].is-disabled { opacity: .48; cursor: not-allowed; filter: grayscale(.25); }

.ca-panel { max-width: 680px; display: grid; grid-template-columns: 1fr auto; gap: 14px; align-items: center; padding: 12px 12px 12px 15px; border: var(--line); background: rgba(247,245,255,.96); box-shadow: 5px 5px 0 rgba(9,9,13,.92); }
.ca-panel > div { min-width: 0; }
.ca-panel .micro-label { display: block; margin-bottom: 4px; color: #505175; }
.ca-value { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--mono); font-weight: 700; }
.copy-btn { border: 2px solid var(--ink); background: var(--cyan); color: var(--ink); font-weight: 900; padding: 10px 14px; cursor: pointer; box-shadow: 3px 3px 0 var(--purple); }
.copy-btn:hover, .copy-btn:focus-visible { transform: translate(-2px,-2px); box-shadow: 5px 5px 0 var(--magenta); }

.market-strip { margin-top: 16px; display: grid; grid-template-columns: repeat(4,1fr); border: var(--line); background: var(--offwhite); max-width: 760px; }
.market-stat { padding: 9px 11px; border-right: 2px solid var(--ink); min-width: 0; }
.market-stat:last-child { border-right: 0; }
.market-stat span { display: block; font-size: 9px; font-weight: 700; letter-spacing: .08em; color: #595a80; }
.market-stat strong { display: block; font-family: var(--display); font-size: clamp(18px, 2vw, 27px); line-height: 1.05; overflow: hidden; text-overflow: ellipsis; }

.hero-art-wrap { height: calc(100svh - var(--header-h)); align-self: end; display: flex; align-items: flex-end; justify-content: center; position: relative; pointer-events: none; }
.hero-art { width: min(42vw, 620px); max-height: 91%; object-fit: contain; object-position: center bottom; position: relative; z-index: 2; filter: drop-shadow(12px 12px 0 rgba(9,9,13,.18)); }
.ground-shadow { width: 66%; height: 26px; border-radius: 50%; background: rgba(44,35,114,.2); filter: blur(3px); position: absolute; bottom: 3.6%; }
.scroll-cue { position: absolute; bottom: 16px; left: 50%; z-index: 5; width: 34px; height: 44px; border: 2px solid var(--ink); background: var(--offwhite); transform: translateX(-50%); }
.scroll-cue span { position: absolute; width: 8px; height: 8px; border-right: 3px solid var(--ink); border-bottom: 3px solid var(--ink); transform: rotate(45deg); top: 11px; left: 11px; animation: cue 1.25s steps(3,end) infinite; }

/* ABOUT */
.about { background: linear-gradient(135deg,#f0efff 0%,#c9c8ff 55%,#9fa9ff 100%); display: flex; align-items: center; padding: calc(var(--header-h) + 42px) 0 54px; }
.about::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(9,9,13,.045) 2px,transparent 2px),linear-gradient(90deg,rgba(9,9,13,.045) 2px,transparent 2px); background-size: 42px 42px; opacity: .5; }
.about-grid { display: grid; grid-template-columns: 1fr minmax(420px,.82fr); align-items: center; gap: clamp(40px,7vw,110px); }
.deadpan-copy { font-family: var(--display); font-size: clamp(26px,3vw,42px); line-height: 1.08; font-weight: 800; max-width: 540px; }
.status-grid { margin-top: 34px; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; max-width: 720px; }
.status-card { position: relative; min-height: 92px; padding: 14px; background: var(--offwhite); border: var(--line); box-shadow: 5px 5px 0 var(--ink); overflow: hidden; }
.status-card span { display: block; font-size: 10px; color: #5d5d7b; letter-spacing: .12em; }
.status-card strong { font-family: var(--display); font-size: 30px; line-height: 1; }
.status-card i { position: absolute; right: 0; bottom: 0; width: 9px; height: 36px; background: var(--cyan); box-shadow: -10px 0 0 var(--blue), -20px 0 0 var(--purple), -30px 0 0 var(--magenta); }
.about-visual { display: flex; justify-content: center; }
.image-frame { position: relative; border: 4px solid var(--ink); background: var(--offwhite); box-shadow: 11px 11px 0 var(--purple), -7px -7px 0 var(--cyan); }
.image-frame-portrait { width: min(520px,100%); }
.image-frame img { width: 100%; height: 100%; object-fit: cover; }
.frame-corner { position: absolute; width: 24px; height: 24px; border-color: var(--offwhite); border-style: solid; z-index: 2; }
.frame-corner.tl { left: 7px; top: 7px; border-width: 4px 0 0 4px; }
.frame-corner.tr { right: 7px; top: 7px; border-width: 4px 4px 0 0; }
.frame-corner.bl { left: 7px; bottom: 7px; border-width: 0 0 4px 4px; }
.frame-corner.br { right: 7px; bottom: 7px; border-width: 0 4px 4px 0; }
.floating-decor { position: absolute; width: 180px; opacity: .34; pointer-events: none; }
.decor-bars { left: -26px; bottom: 7%; transform: rotate(-6deg); }

/* PLAN */
.plan { background: #e8e8ff; padding: calc(var(--header-h) + 42px) 0 54px; display: flex; align-items: center; }
.plan::before { content:""; position:absolute; inset:0; background: linear-gradient(115deg,rgba(24,231,220,.16),transparent 30%), linear-gradient(295deg,rgba(226,75,220,.13),transparent 32%); }
.plan-grid { display: grid; grid-template-columns: minmax(400px,.83fr) 1.15fr; gap: clamp(42px,7vw,120px); align-items: center; }
.plan h2 { margin-bottom: 32px; }
.plan-steps { display: grid; gap: 14px; }
.plan-step { position: relative; display: grid; grid-template-columns: 92px 1fr 54px; align-items: center; min-height: 118px; background: var(--offwhite); border: var(--line); box-shadow: 7px 7px 0 var(--ink); transition: transform .14s ease, box-shadow .14s ease; }
.plan-step:hover { transform: translate(-3px,-3px); box-shadow: 10px 10px 0 var(--purple); }
.step-number { height: 100%; display: grid; place-items: center; font-family: var(--display); font-size: 48px; font-weight: 900; background: var(--ink); color: white; border-right: 3px solid var(--ink); }
.plan-step:nth-child(1) .step-number { color: var(--cyan); }
.plan-step:nth-child(2) .step-number { color: var(--blue); }
.plan-step:nth-child(3) .step-number { color: var(--magenta); }
.plan-step h3 { margin: 0 0 4px; font-size: clamp(31px,3vw,48px); }
.plan-step p { margin: 0; font-size: 13px; }
.step-arrow { font-family: var(--display); font-size: 38px; font-weight: 900; }

/* MARKET */
.market-community { background: #b9bfff; min-height: 200svh; overflow: visible; }
.market-wrap { padding: calc(var(--header-h) + 44px) 0 68px; min-height: 100svh; }
.market-heading { display: grid; grid-template-columns: 1fr minmax(520px,.9fr); align-items: end; gap: 30px; margin-bottom: 28px; }
.market-heading h2 { font-size: clamp(52px,6vw,94px); margin: 0; }
.market-strip-wide { width: 100%; margin: 0; max-width: none; }
.market-layout { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(300px,.45fr); gap: 24px; align-items: stretch; }
.chart-frame { min-height: 590px; border: 4px solid var(--ink); background: #0a0b14; box-shadow: 9px 9px 0 var(--purple); overflow: hidden; }
.chart-chrome { height: 42px; display: flex; align-items: center; gap: 8px; padding: 0 12px; background: var(--offwhite); border-bottom: 3px solid var(--ink); }
.chart-chrome span { margin-right: auto; font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.chart-chrome i { width: 10px; height: 10px; border: 2px solid var(--ink); }
.chart-chrome i:nth-of-type(1) { background: var(--cyan); }.chart-chrome i:nth-of-type(2){background:var(--violet)}.chart-chrome i:nth-of-type(3){background:var(--magenta)}
.chart-host { height: 548px; position: relative; background: #0c0d16; }
.chart-host iframe { width: 100%; height: 100%; border: 0; display: block; }
.chart-placeholder { position: absolute; inset: 0; display: grid; place-content: center; gap: 8px; text-align: center; color: var(--offwhite); background: radial-gradient(circle at center,rgba(140,91,232,.16),transparent 50%),#0b0c16; padding: 24px; }
.chart-placeholder strong { font-family: var(--display); font-size: 44px; color: var(--cyan); }
.chart-placeholder span { font-size: 12px; color: #c7c6e8; }
.market-character-card { position: relative; border: 4px solid var(--ink); background: linear-gradient(180deg,#dcdcff,#a6afff); display: flex; align-items: flex-end; justify-content: center; min-height: 590px; overflow: hidden; box-shadow: 9px 9px 0 var(--cyan); }
.market-character-card::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(9,9,13,.07) 2px,transparent 2px),linear-gradient(90deg,rgba(9,9,13,.07) 2px,transparent 2px); background-size:34px 34px; }
.market-character { position: relative; z-index: 2; width: 115%; max-width: none; max-height: 95%; object-fit: contain; object-position: center bottom; }
.terminal-note { position:absolute; z-index:3; left:14px; top:14px; background:var(--offwhite); border:var(--line); box-shadow:4px 4px 0 var(--magenta); padding:8px 10px; }
.terminal-note span { display:block; font-size:9px; letter-spacing:.12em; }.terminal-note strong{font-family:var(--display);font-size:24px;}

/* COMMUNITY */
.community-zone { position: relative; min-height: 88svh; display: flex; align-items: center; overflow: hidden; border-top: 4px solid var(--ink); }
.community-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.community-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(207,207,255,.98) 0%,rgba(224,221,255,.93) 34%,rgba(226,224,255,.28) 57%,rgba(0,0,0,0) 75%); }
.community-content { padding: 70px 0; }
.community-panel { width: min(670px,48vw); padding: 28px; border: 4px solid var(--ink); background: rgba(247,245,255,.97); box-shadow: 10px 10px 0 var(--cyan); }
.community-panel h2 { font-size: clamp(62px,7vw,112px); margin-bottom: 13px; }
.community-panel > p { font-family:var(--display); font-size: 30px; font-weight: 900; margin-bottom: 22px; }
.social-cta-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.social-cta { display:flex; align-items:center; gap:10px; min-height:58px; border:var(--line); background:var(--offwhite); font-family:var(--display); font-size:22px; font-weight:900; padding:6px 10px; box-shadow:4px 4px 0 var(--ink); }
.social-cta img { width:42px; height:42px; image-rendering:pixelated; }
.social-cta:hover, .social-cta:focus-visible { transform:translate(-2px,-2px); box-shadow:6px 6px 0 var(--magenta); }
.ca-panel-final { margin-top: 18px; box-shadow: 5px 5px 0 var(--purple); }
.site-footer { border-top: 4px solid var(--ink); background: var(--offwhite); min-height: 108px; display:flex; align-items:center; }
.footer-inner { display:grid; grid-template-columns: 1fr auto 1fr; align-items:center; gap:26px; padding:18px 0; }
.footer-wordmark { width:min(410px,100%); height:58px; object-fit:contain; object-position:left; }
.footer-center { text-align:center; font-size:10px; letter-spacing:.12em; }.footer-center b{display:block;font-size:12px;}
.footer-socials { justify-content:flex-end; }

.toast { position:fixed; z-index:4000; right:20px; bottom:20px; padding:12px 18px; background:var(--ink); color:var(--offwhite); border:3px solid var(--offwhite); box-shadow:5px 5px 0 var(--magenta); font-weight:900; transform:translateY(120px); opacity:0; transition:.18s ease; }
.toast.show { transform:translateY(0); opacity:1; }

.reveal-block, .reveal-art { opacity:0; transform:translateY(18px); }
.is-visible.reveal-block, .is-visible.reveal-art { opacity:1; transform:none; transition:opacity .38s steps(4,end),transform .38s steps(4,end); }

@keyframes blink { 0%,49%{opacity:1}50%,100%{opacity:.25} }
@keyframes cue { 0%{top:9px;opacity:0}35%{opacity:1}100%{top:20px;opacity:0} }

@media (min-width: 981px) {
  html { scroll-snap-type: y proximity; }
  .snap-section { scroll-snap-align: start; scroll-snap-stop: normal; }
}

@media (max-width: 1120px) {
  :root { --header-h: 66px; }
  .site-header { grid-template-columns: minmax(190px,1fr) auto; }
  .main-nav { display:none; }
  .hero-grid { grid-template-columns: 1.02fr .82fr; }
  .hero h1 { font-size: clamp(72px,10vw,118px); }
  .market-heading { grid-template-columns: 1fr; align-items:start; }
  .market-strip-wide { max-width: 760px; }
  .market-layout { grid-template-columns: 1fr 330px; }
}

@media (max-width: 760px) {
  :root { --header-h: 62px; }
  html { scroll-snap-type:none; }
  .section-shell { width:min(100% - 28px,720px); }
  .site-header { height:var(--header-h); padding:7px 12px; grid-template-columns: minmax(0,1fr) auto; gap:10px; background:rgba(247,245,255,.97); }
  .header-wordmark { height:38px; max-width:270px; }
  .header-socials { display:none; }
  .menu-toggle { display:block; }
  .mobile-menu[hidden] { display:none; }
  .mobile-menu:not([hidden]) { display:block; }

  .hero { background-image:url("assets/images/hero-bg-mobile.webp"); background-position:center top; align-items:stretch; }
  .hero-shade { background:linear-gradient(180deg,rgba(202,202,255,.95) 0%,rgba(219,216,255,.78) 31%,rgba(219,216,255,.12) 53%,rgba(255,255,255,0) 67%); }
  .hero-grid { min-height:calc(100svh - var(--header-h)); display:flex; flex-direction:column; gap:0; align-items:stretch; }
  .hero-copy { padding:28px 0 0; position:relative; z-index:4; max-width:none; }
  .eyebrow { font-size:9px; margin-bottom:12px; }
  .hero h1 { font-size:clamp(52px,16vw,76px); text-shadow:3px 3px 0 var(--offwhite); margin-bottom:7px; }
  .hero h1 span:last-child { -webkit-text-stroke:2px var(--ink); text-shadow:3px 3px 0 var(--cyan),5px 5px 0 var(--purple); }
  .ticker-badge { font-size:20px; margin:5px 0 11px; padding:4px 12px; }
  .hero-tagline { font-size:27px; margin:4px 0 2px; }
  .hero-subline { font-size:9px; margin-bottom:10px; }
  .hero-ctas { margin:12px 0 10px; gap:8px; }
  .pixel-btn { min-height:44px; font-size:19px; padding:9px 15px; flex:1; }
  .ca-panel { padding:9px; gap:8px; box-shadow:4px 4px 0 var(--ink); }
  .ca-panel .micro-label { font-size:8px; }
  .ca-value { font-size:10px; }
  .copy-btn { padding:8px 10px; font-size:11px; }
  .market-strip { grid-template-columns:repeat(2,1fr); margin-top:10px; }
  .market-stat { border-bottom:2px solid var(--ink); }
  .market-stat:nth-child(2) { border-right:0; }
  .market-stat:nth-child(3),.market-stat:nth-child(4){border-bottom:0;}
  .market-stat strong { font-size:19px; }
  .hero-art-wrap { flex:1; min-height:350px; height:auto; margin-top:-20px; }
  .hero-art { width:min(83vw,480px); max-height:100%; }
  .ground-shadow { bottom:4%; }
  .scroll-cue { display:none; }

  h2 { font-size:clamp(52px,16vw,78px); }
  .about, .plan { min-height:auto; padding:calc(var(--header-h) + 34px) 0 48px; overflow:visible; }
  .about-grid, .plan-grid { grid-template-columns:1fr; gap:36px; }
  .about-copy { order:1; }.about-visual{order:2;}
  .deadpan-copy { font-size:29px; }
  .status-grid { grid-template-columns:1fr; gap:8px; }
  .status-card { min-height:72px; }
  .image-frame-portrait { width:min(100%,500px); }
  .plan-visual { order:2; }.plan-copy{order:1;}
  .plan-step { grid-template-columns:74px 1fr 38px; min-height:95px; }
  .step-number { font-size:38px; }
  .plan-step h3 { font-size:30px; }

  .market-community { min-height:auto; }
  .market-wrap { padding:calc(var(--header-h) + 34px) 0 50px; min-height:auto; }
  .market-heading { grid-template-columns:1fr; margin-bottom:20px; }
  .market-heading h2 { font-size:clamp(50px,15vw,76px); }
  .market-layout { grid-template-columns:1fr; }
  .chart-frame { min-height:480px; box-shadow:6px 6px 0 var(--purple); }
  .chart-host { height:438px; }
  .chart-placeholder strong { font-size:36px; }
  .market-character-card { min-height:420px; }
  .market-character { width:min(108%,500px); }
  .community-zone { min-height:780px; align-items:flex-end; }
  .community-bg { object-position:64% center; }
  .community-overlay { background:linear-gradient(180deg,rgba(205,205,255,.13) 0%,rgba(216,215,255,.55) 34%,rgba(225,223,255,.98) 62%,rgba(225,223,255,.98) 100%); }
  .community-content { padding:350px 0 46px; }
  .community-panel { width:100%; padding:20px; box-shadow:7px 7px 0 var(--cyan); }
  .community-panel h2 { font-size:clamp(54px,16vw,78px); }
  .community-panel > p { font-size:24px; }
  .social-cta-grid { grid-template-columns:1fr 1fr; }
  .social-cta { font-size:18px; min-height:54px; }
  .social-cta img { width:38px; height:38px; }
  .footer-inner { grid-template-columns:1fr auto; }
  .footer-wordmark { width:230px; height:46px; }
  .footer-center { display:none; }
  .footer-socials a { width:34px;height:34px; }
}

@media (max-width: 420px) {
  .section-shell { width:calc(100% - 20px); }
  .header-wordmark { max-width:220px; }
  .hero h1 { font-size:51px; }
  .hero-art { width:92vw; }
  .social-cta-grid { grid-template-columns:1fr; }
  .footer-inner { grid-template-columns:1fr; justify-items:center; }
  .footer-wordmark { object-position:center; }
  .footer-socials { justify-content:center; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.001ms !important; }
  .reveal-block,.reveal-art { opacity:1; transform:none; }
}
