/* Hit and Run Trading — base styles (design tokens + shared nav/footer + utilities) */
/* self-hosted fonts (Google Fonts not required) */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-condensed-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-condensed-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:italic;font-weight:800;font-display:swap;src:url(/fonts/barlow-condensed-latin-800-italic.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/barlow-condensed-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:italic;font-weight:900;font-display:swap;src:url(/fonts/barlow-condensed-latin-900-italic.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/barlow-condensed-latin-900-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/barlow-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/barlow-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2')}
:root{--bg:#070b16;--bg2:#0d1322;--panel:#0a1020;--line:rgba(255,255,255,.08);--blue:#2b5cff;--blue2:#5b8dff;--blue3:#8fb0ff;--text:#f2f5fb;--muted:#9aa6bd;--dim:#6f7d99;--green:#4ebe96;--amber:#f0b429;--red:#ff6b6b}
html{scrollbar-color:#1a2542 #070b16;scrollbar-width:thin;-webkit-text-size-adjust:100%}
body{margin:0;background:#070b16;color:#f2f5fb;font-family:'Barlow',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#f2f5fb;text-decoration:none}a:hover{color:#5b8dff}
*{box-sizing:border-box}
img{max-width:100%}
button,input,select,textarea{font-family:inherit}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#070b16}::-webkit-scrollbar-thumb{background:#1a2542;border-radius:4px;border:2px solid #070b16}::-webkit-scrollbar-thumb:hover{background:#2b5cff}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}
/* shared keyframes used across pages */
@keyframes hr-dash{0%,40%{transform:translateX(0) skewX(0)}45%{transform:translateX(-8px) skewX(8deg)}52%{transform:translateX(14px) skewX(-14deg)}62%,100%{transform:translateX(0) skewX(0)}}
@keyframes hr-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes hr-shine{from{background-position:100% 0}to{background-position:-150% 0}}
@keyframes hr-tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes hr-beam{0%{opacity:.35;transform:translateX(-10%) scaleX(.8)}50%{opacity:.7;transform:translateX(0) scaleX(1)}100%{opacity:.35;transform:translateX(10%) scaleX(.8)}}
@keyframes hr-spin{to{transform:rotate(360deg)}}
@keyframes hr-toast{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}
/* nav */
@keyframes nav-sheen{0%{transform:translateX(-140%) skewX(-20deg)}100%{transform:translateX(240%) skewX(-20deg)}}
.nav-wide{display:block}.nav-narrow{display:none}
@media (max-width:1099px){.nav-wide{display:none}.nav-narrow{display:block}}
.nav-h1:hover{color:#fff!important;letter-spacing:.14em!important;box-shadow:inset 0 -2px 0 #5b8dff!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.nav-h2:hover{box-shadow:0 0 0 1px rgba(143,176,255,.6),0 0 48px rgba(43,92,255,.5)!important}
.nav-h3:hover{color:#fff!important;letter-spacing:.14em!important;box-shadow:inset 0 -2px 0 #5b8dff!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.nav-h4:hover{color:#fff!important;background:rgba(43,92,255,.18)!important}
.nav-h5:hover{color:#fff!important;background:rgba(43,92,255,.18)!important}
.nav-h6:hover{color:#fff!important;transform:translateY(-1px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 0 0 1px rgba(143,176,255,.7),0 0 28px rgba(43,92,255,.65)!important}
.nav-h7:hover{box-shadow:0 0 0 1px rgba(143,176,255,.6),0 0 48px rgba(43,92,255,.5)!important}
.nav-h8:hover{color:#fff!important;background:rgba(43,92,255,.18)!important}
.nav-h9:hover{color:#fff!important;background:rgba(43,92,255,.18)!important}
.nav-h10:hover{color:#fff!important;transform:translateY(-1px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 0 0 1px rgba(143,176,255,.7),0 0 28px rgba(43,92,255,.65)!important}
.nav-h11:hover{color:#fff!important;letter-spacing:.14em!important;box-shadow:inset 0 -2px 0 #5b8dff!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
/* footer */
@keyframes ft-streak{0%{transform:translateX(-30%);opacity:0}20%{opacity:.9}100%{transform:translateX(130%);opacity:0}}
@keyframes ft-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes ft-ghost{0%{transform:translateX(-90px);opacity:.9}55%{transform:translateX(-30px);opacity:.6}100%{transform:translateX(-90px);opacity:.9}}
@keyframes ft-ghost2{0%{transform:translateX(-40px)}55%{transform:translateX(-10px)}100%{transform:translateX(-40px)}}
@keyframes ft-lines{0%{transform:translateX(-60px);opacity:0}25%{opacity:1}60%{transform:translateX(40px);opacity:.8}100%{transform:translateX(-60px);opacity:0}}
@keyframes ft-sweep{0%{transform:translateX(-700px);opacity:0}15%{opacity:1}85%{opacity:1}100%{transform:translateX(1900px);opacity:0}}
@keyframes ft-jolt{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}
.footer-h1:hover{color:#fff!important;transform:translateY(-1px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 0 0 1px rgba(143,176,255,.7),0 0 28px rgba(43,92,255,.65)!important}
.footer-h2:hover{color:#fff!important;border-color:rgba(143,176,255,.6)!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h3:hover{color:#fff!important;border-color:rgba(143,176,255,.8)!important;box-shadow:0 0 18px rgba(43,92,255,.35)!important;transform:translateY(-1px)!important}
.footer-h4:hover{color:#fff!important;border-color:rgba(143,176,255,.8)!important;box-shadow:0 0 18px rgba(43,92,255,.35)!important;transform:translateY(-1px)!important}
.footer-h5:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h6:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h7:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h8:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h9:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h10:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h11:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h12:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h13:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h14:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h15:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h16:hover{color:#fff!important;letter-spacing:.16em!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h17:hover{color:#fff!important;letter-spacing:.18em!important;box-shadow:inset 0 -2px 0 #5b8dff!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h18:hover{color:#fff!important;letter-spacing:.18em!important;box-shadow:inset 0 -2px 0 #5b8dff!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h19:hover{color:#fff!important;letter-spacing:.18em!important;box-shadow:inset 0 -2px 0 #5b8dff!important;text-shadow:0 0 14px rgba(91,141,255,.9)!important}
.footer-h20:hover{background:rgba(43,92,255,.2)!important;box-shadow:0 0 16px rgba(43,92,255,.45)!important;transform:translateY(-2px)!important}
/* utilities */
.hr-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:200;display:flex;align-items:center;gap:12px;padding:12px 18px;border-radius:8px;background:#0d1322;border:1px solid rgba(91,141,255,.45);box-shadow:0 20px 60px rgba(0,0,0,.6),0 0 24px rgba(43,92,255,.25);font-size:14px;color:#fff;white-space:nowrap;max-width:calc(100vw - 32px);animation:hr-toast .25s ease}
.hr-toast a{color:#8fb0ff;font-weight:600}
.hr-spin{display:inline-block;animation:hr-spin 1s linear infinite}
.hr-hidden{display:none!important}
.hr-input{width:100%;background:rgba(7,11,22,.7);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;font-size:15px;padding:12px 14px;outline:none;transition:border-color .2s,box-shadow .2s}
.hr-input:focus{border-color:#5b8dff;box-shadow:0 0 0 3px rgba(43,92,255,.25)}
.hr-input::placeholder{color:#4a5670}
/* Stripe Payment Element host */
.hr-stripe-el{padding:2px 0}
@media print{header,footer,.hr-noprint{display:none!important}body{background:#fff;color:#000}}
/* nav: keep the wide layout inside the viewport on 1100–1300px screens */
@media (min-width:1100px) and (max-width:1300px){
  .nav-wide>div{gap:10px!important;padding-left:16px!important;padding-right:16px!important}
  .nav-wide nav{gap:10px!important;font-size:13px!important;letter-spacing:.03em!important}
  .nav-wide nav a:hover{letter-spacing:.06em!important}
  .nav-wide>div>div:last-child>div{padding-left:8px!important}
  .nav-wide a[href="/subscribe"],.nav-wide a[href="/market-insights"][style*="linear-gradient"]{padding-left:12px!important}
  .nav-wide a[title="Log in"] span:last-child,.nav-wide a[title="My Account"] span:last-child{max-width:80px!important}
}

/* ---- mobile header bar (<1100px) ---- */
.hr-mbar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px;padding:0 16px}
.hr-mlogo{position:relative;display:flex;align-items:center;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px rgba(91,141,255,.22),0 0 24px rgba(43,92,255,.22)}
.hr-mlogo img{height:42px;width:auto;display:block}
.hr-mactions{display:flex;align-items:center;gap:8px}
.hr-mbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#e9eef8;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;transition:background .2s,border-color .2s}
.hr-mbtn:hover,.hr-mbtn:active{background:rgba(43,92,255,.18);border-color:rgba(143,176,255,.45);color:#fff}
.hr-mbadge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:5px;background:#2b5cff;color:#fff;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;align-items:center;justify-content:center;box-shadow:0 0 0 2px #070b16}
.hr-burger span{position:absolute;left:13px;width:18px;height:2px;border-radius:2px;background:currentColor;transition:transform .3s cubic-bezier(.2,.8,.2,1),top .3s,width .3s}
.hr-burger span:first-child{top:17px}.hr-burger span:last-child{top:25px;width:12px}
body.hr-menu-open .hr-burger span:first-child{top:21px;transform:rotate(45deg)}
body.hr-menu-open .hr-burger span:last-child{top:21px;width:18px;transform:rotate(-45deg)}
/* ---- slide-in menu sheet ---- */
.hr-sheet{position:fixed;inset:0;z-index:100;pointer-events:none}
.hr-sheet-bg{position:absolute;inset:0;background:rgba(4,7,15,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .3s}
.hr-sheet-panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,100%);display:flex;flex-direction:column;background:linear-gradient(180deg,#0b1224 0%,#070b16 100%);border-left:1px solid rgba(255,255,255,.08);box-shadow:-30px 0 80px rgba(0,0,0,.6);transform:translateX(100%);transition:transform .38s cubic-bezier(.2,.8,.2,1);overflow-y:auto;overscroll-behavior:contain}
.hr-sheet-panel::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#2b5cff 30%,#8fb0ff 50%,#2b5cff 70%,transparent)}
.hr-sheet-panel::after{content:"";position:absolute;right:-30%;top:-20%;width:80%;height:50%;background:radial-gradient(closest-side,rgba(43,92,255,.22),transparent);pointer-events:none}
body.hr-menu-open{overflow:hidden}
body.hr-menu-open .hr-sheet{pointer-events:auto}
body.hr-menu-open .hr-sheet-bg{opacity:1}
body.hr-menu-open .hr-sheet-panel{transform:translateX(0)}
.hr-sheet-top{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 12px 24px;min-height:64px}
.hr-sheet-kicker{display:flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9aa6bd}
.hr-sheet-dot{width:6px;height:6px;border-radius:50%;background:#6f7d99;box-shadow:0 0 8px #6f7d99}
.hr-sheet-nav{display:flex;flex-direction:column;padding:8px 0 4px}
.hr-sheet-link{position:relative;display:flex;align-items:center;gap:16px;padding:16px 24px;border-top:1px solid rgba(255,255,255,.06);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:30px;line-height:1;letter-spacing:.04em;text-transform:uppercase;color:#c9d2e4;opacity:0;transform:translateX(24px);transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1),color .2s,background .2s}
.hr-sheet-link:last-child{border-bottom:1px solid rgba(255,255,255,.06)}
body.hr-menu-open .hr-sheet-link{opacity:1;transform:none;transition-delay:calc(.08s + var(--i) * .045s)}
.hr-sheet-link:hover,.hr-sheet-link:active{color:#fff;background:rgba(43,92,255,.08)}
.hr-sheet-link.is-active{color:#fff}
.hr-sheet-link.is-active::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:#5b8dff;box-shadow:0 0 12px #5b8dff}
.hr-sheet-idx{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:400;letter-spacing:.04em;color:#3d5bb8;width:22px}
.hr-sheet-label{flex:1}
.hr-sheet-arrow{font-family:'IBM Plex Mono',monospace;font-size:16px;color:#3a4868;transition:color .2s,transform .2s}
.hr-sheet-link:hover .hr-sheet-arrow{color:#8fb0ff;transform:translateX(4px)}
.hr-sheet-account{display:flex;flex-direction:column;gap:10px;padding:20px 24px;margin-top:auto}
.hr-sheet-acct{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);color:#fff}
.hr-sheet-av{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(143,176,255,.4);font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:16px;color:#fff}
.hr-sheet-acct>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.hr-sheet-acct-l{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;letter-spacing:.08em;text-transform:uppercase}
.hr-sheet-acct-s{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.06em;color:#6f7d99;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hr-sheet-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;border-radius:10px;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:19px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:linear-gradient(180deg,#3d6cff,#2449d8);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 0 1px rgba(143,176,255,.35),0 12px 36px rgba(43,92,255,.4)}
.hr-sheet-cta span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:rgba(255,255,255,.2);font-family:'IBM Plex Mono',monospace;font-size:13px}
.hr-sheet-cta:hover{color:#fff}
.hr-sheet-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px 22px;border-top:1px solid rgba(255,255,255,.06);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6f7d99}
.hr-sheet-foot b{color:#fff;font-weight:500}
.hr-sheet-foot a{display:flex;align-items:center;gap:8px;color:#c9d2e4;text-transform:none;letter-spacing:0}
.hr-sheet-foot a img{width:18px;height:18px;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
@media (min-width:1100px){.hr-sheet{display:none}}

/* ---- footer on phones: tight 3-column link grid + centered legal strip ---- */
@media (max-width:640px){
  footer>div:first-of-type,footer .ft-links{gap:28px 12px!important}
  footer>div[style*="padding:48px 24px 40px"]{padding:32px 16px 28px!important}
  .ft-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0 10px!important}
  .ft-col>div:first-child{font-size:9px!important;letter-spacing:.12em!important;padding-bottom:8px!important;margin-bottom:4px!important}
  .ft-col a{font-size:13px!important;letter-spacing:.06em!important;padding:6px 0!important;gap:0!important;white-space:normal!important;line-height:1.15}
  .ft-col a:hover{letter-spacing:.06em!important}
  .ft-col a>span:first-child{display:none!important}
  footer>div[style*="padding:8px 12px 24px"]{padding:0 8px 12px!important}
  .ft-bottom{grid-template-columns:1fr!important;gap:14px!important;padding:20px 16px 26px!important;justify-items:center;text-align:center}
  .ft-copy{justify-content:center}
  .ft-copy>div{align-items:center}
  .ft-copy span:first-child{font-size:13px!important}
  .ft-copy span:last-child{font-size:9px!important}
  .ft-legal{justify-self:center!important;justify-content:center!important;gap:6px!important}
  .ft-legal nav a{padding:8px 8px!important;font-size:12px!important;letter-spacing:.1em!important;gap:6px!important}
  .ft-legal nav a:hover{letter-spacing:.1em!important}
}
@media (max-width:360px){.ft-links{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ft-col:last-child{grid-column:1/-1}}
