/* ════════════════════════════════════════════════════════════
   AVENYX — SHARED STYLE FOUNDATION
   Single source of truth for brand tokens, typography, and
   components shared across all pages (home, dashboard, legal).
   Page-specific styles live in each page's own <style> block.
   ════════════════════════════════════════════════════════════ */

/* ── BRAND TOKENS (exact brand-sheet hex — do not drift) ────── */
:root{
  /* core palette */
  --navy:#0E141B;
  --slate:#333A49;
  --gold:#F19A2E;
  --coral:#FA5A3F;
  --cyan:#28C9DF;
  --green:#54D990;

  /* page surfaces (dark navy ramp) */
  --page:#03070E;
  --s1:#08111C;
  --s2:#0C1826;
  --s3:#101E2F;
  --s4:#142235;

  /* borders */
  --bl:rgba(200,220,255,.09);
  --bl2:rgba(200,220,255,.05);
  --bl3:rgba(200,220,255,.03);

  /* text ramp */
  --tx:#E8EFF9;
  --t2:#94A3B7;
  --t3:#536070;

  /* color dims (translucent accent fills) */
  --gdim:rgba(241,154,46,.10);
  --gdim2:rgba(241,154,46,.055);
  --cdim:rgba(250,90,63,.09);
  --qdim:rgba(40,201,223,.09);
  --greendim:rgba(84,217,144,.08);

  /* typography */
  --sans:"Satoshi",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;

  /* layout */
  --radius:8px;
  --radius-lg:12px;
  --radius-xl:16px;
}

/* ── RESET ──────────────────────────────────────────────────── */
*{box-sizing:border-box;margin:0;padding:0}
html{
  background:var(--page);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  scroll-behavior:smooth;
}
body{
  font-family:var(--sans);
  color:var(--tx);
  min-height:100vh;
  line-height:1.5;
}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
button{font-family:var(--sans);cursor:pointer}

/* ── SHARED: BOUNDARY BAR ───────────────────────────────────── */
/* "Not a trading signal · Not financial advice · ..." strip used
   on both home and dashboard for consistent compliance framing. */
.boundary-bar{
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  font-size:11px;color:var(--t3);letter-spacing:.02em;
}
.boundary-bar .bb-item{display:flex;align-items:center;gap:7px}
.boundary-bar .bb-dot{
  width:5px;height:5px;border-radius:50%;background:var(--coral);
  flex:0 0 auto;
}

/* ── SHARED: BUTTONS ────────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 20px;border-radius:var(--radius);
  border:1px solid var(--bl);background:rgba(255,255,255,.04);
  color:var(--t2);font-size:13px;font-weight:600;letter-spacing:.02em;
  transition:.15s;white-space:nowrap;
}
.btn:hover{border-color:rgba(40,201,223,.35);color:var(--cyan);background:var(--qdim)}
.btn-primary{
  border-color:rgba(40,201,223,.4);background:rgba(40,201,223,.1);color:#C8EFFF;
}
.btn-primary:hover{background:rgba(40,201,223,.18);border-color:rgba(40,201,223,.6)}
.btn-gold{border-color:rgba(241,154,46,.3);background:var(--gdim2);color:#F0C07A}
.btn-gold:hover{border-color:rgba(241,154,46,.55);background:var(--gdim)}

/* ── SHARED: FOOTER ─────────────────────────────────────────── */
.site-footer{
  border-top:1px solid var(--bl2);
  padding:40px 0 32px;margin-top:60px;
}
.footer-inner{
  max-width:1100px;margin:0 auto;padding:0 32px;
  display:flex;justify-content:space-between;align-items:flex-start;
  flex-wrap:wrap;gap:28px;
}
.footer-tagline{font-size:18px;font-weight:700;line-height:1.4}
.footer-tagline .c-cyan{color:var(--cyan)}
.footer-tagline .c-gold{color:var(--gold)}
.footer-links{display:flex;gap:26px;flex-wrap:wrap;align-items:center}
.footer-links a{
  font-size:13px;color:var(--t2);transition:.14s;
  display:inline-flex;align-items:center;gap:7px;
}
.footer-links a:hover{color:var(--tx)}
.disclaimer{
  max-width:1100px;margin:28px auto 0;padding:0 32px;
}
.disclaimer .dtag{
  display:inline-block;font-size:9px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;color:var(--t3);margin-bottom:8px;
}
.disclaimer p{font-size:11.5px;line-height:1.6;color:var(--t3);max-width:880px}
.footer-legal{
  max-width:1100px;margin:24px auto 0;padding:0 32px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
  font-size:11px;color:var(--t3);
}

/* ── SHARED: SOCIAL ICONS ───────────────────────────────────── */
.social-ico{width:14px;height:14px;fill:currentColor}

/* ── SHARED: TOP NAV MENU LINKS ─────────────────────────────── */
.nav-menu{display:flex;align-items:center;gap:26px;margin-left:auto;margin-right:24px}
.nav-menu a{
  font-size:13px;font-weight:500;color:var(--t2);letter-spacing:.01em;
  transition:.15s;position:relative;white-space:nowrap;
}
.nav-menu a:hover{color:var(--tx)}
.nav-menu a::after{
  content:'';position:absolute;left:0;bottom:-5px;width:0;height:1.5px;
  background:var(--cyan);transition:width .2s;
}
.nav-menu a:hover::after{width:100%}
@media (max-width:640px){
  .nav-menu{gap:15px;margin-right:12px}
  .nav-menu a{font-size:12px}
}

/* ── REDUCED MOTION ─────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
