/* GexHunters site — shared stylesheet for the hand-written pages (index, hunterbot, levels, login, gexhunters, download).
   Tokens are TradeZella's measured MUI set with the Matcha green scale (same names / values as HunterBot's hb-ui.css,
   so the dashboards, the sign-in and these pages read as one product). Roboto, sentence case, weight 400 / 500. */
:root{--brand-fill:#A5D6A7;--brand-fill-h:#81C784;--brand-fill-p:#66BB6A;--on-brand:#12301A}
:root[data-theme="dark"]{--brand-fill-h:#C8E6C9;--brand-fill-p:#81C784}
:root,:root[data-theme="light"]{color-scheme:light;
 --bg:#f6f6f6;--card:#fff;--inset:#f5f5f5;--th:#F0F4EE;--track:#eeeeee;--hover:#f7f7f9;
 --line:#eeeeee;--line2:#e0e0e0;--line3:#bdbdbd;--outline-h:#81C784;
 --ink:#131A15;--ink2:#616161;--ink3:#757575;--ph:#9e9e9e;
 --brand:#2E7D32;--brand-h:#1B5E20;--brand-p:#14491A;--brand-tint:#E8F5E9;--brand-ink:#2E7D32;--brand-line:#A5D6A7;--ring:rgba(46,125,50,.15);
 --link:#2E7D32;--link-h:#1B5E20;
 --good:#27a277;--bad:#e74c4c;--warn:#ff9800;
 --good-tint:#d7f4e5;--good-ink:#198260;--bad-tint:#fde3e3;--bad-ink:#d42e2e;
 --warn-tint:#fff3e0;--warn-ink:#f57c00;--warn-line:#ffcc80;--neu-tint:#f2f2f3;--neu-ink:#616161;
 --sh-card:0 1px 2px rgba(16,24,40,.04);--sh-sm:0 4px 8px rgba(16,24,40,.12);--sh-menu:0 12px 16px rgba(16,24,40,.12);
 --sb:#d9d9d9;--sb-h:#bdbdbd;
 --rail:linear-gradient(177deg,#13201A 0%,#2B4A33 82.25%);--rail-ic:#A39EAC;
 --band:#13201A;--band-ink:#A5D6A7;
 --mbar:#13201A;--mbar-line:#13201A;--mbar-ic:#A39EAC;
 /* the chart card: TradingView's dark chart as the GEX Bridge / extension draw it */
 --chart:#131722;--chart-line:#2a2e39;--chart-ink:#d1d4dc;--chart-ink2:#787b86}
:root[data-theme="dark"]{color-scheme:dark;
 --bg:#0D0D0D;--card:#141414;--inset:#212121;--th:#1a1a1a;--track:#262626;--hover:#1c1c1c;
 --line:#262626;--line2:#424242;--line3:#616161;--outline-h:#1B5E20;
 --ink:#fafafa;--ink2:#bdbdbd;--ink3:#9e9e9e;--ph:#757575;
 --brand-h:#66BB6A;--brand-tint:rgba(46,125,50,.22);--brand-ink:#A5D6A7;--brand-line:rgba(102,187,106,.45);--ring:rgba(46,125,50,.35);
 --link:#81C784;--link-h:#A5D6A7;
 --good:#4ebf94;--bad:#f06363;--warn:#ffa726;
 --good-tint:rgba(78,191,148,.14);--good-ink:#4ebf94;--bad-tint:rgba(240,99,99,.14);--bad-ink:#f06363;
 --warn-tint:rgba(255,167,38,.14);--warn-ink:#ffa726;--warn-line:rgba(255,167,38,.35);--neu-tint:#212121;--neu-ink:#bdbdbd;
 --sh-card:none;--sh-sm:none;--sh-menu:0 12px 24px rgba(0,0,0,.5);
 --sb:#424242;--sb-h:#616161;
 --rail:#141414;--rail-ic:#bdbdbd;
 --band:#141414;--band-ink:#bdbdbd;
 --mbar:#141414;--mbar-line:#262626;--mbar-ic:#bdbdbd;
 --chart:#131722;--chart-line:#2a2e39;--chart-ink:#d1d4dc;--chart-ink2:#787b86}
:root{--sans:Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;--maxw:1120px;
 --green:var(--good);--red:var(--bad);--gold:var(--warn);
 /* the indicator's default level colours (GexHunter.pine "5. Colors" / the overlay's COLORS) */
 --cw:#FF1744;--pw:#00C853;--flip:#9370DB;--mp:#9C27B0;--gamma:#29B6F6;--vanna:#CE93D8;--charm:#FF9800;--charmwall:#F4511E;--charmzero:#FFD54F;--dex:#80DEEA;
 --gh:#FFA726;--gh-box:#0D1117;--pos:#00E676;--neg:#FF5252}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 14px/1.5 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
a{color:inherit;text-decoration:none}
p a,.ans a,.lede a,.note a,li a,td a,.foot a{color:var(--link)}
p a:hover,.ans a:hover,.lede a:hover,.note a:hover,li a:hover,td a:hover,.foot a:hover{color:var(--link-h)}
code,pre,kbd,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
code{font-size:12.5px;background:var(--inset);border:1px solid var(--line2);border-radius:4px;padding:1px 6px;color:var(--ink);overflow-wrap:anywhere}
h1,h2,h3{font-weight:500;margin:0;text-wrap:balance}
::selection{background:var(--brand-tint)}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--sb);border-radius:10px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--sb-h)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.wrap.narrow{max-width:880px}
section,header{scroll-margin-top:80px}

/* ---- buttons (TradeZella: radius 8, 40 high, 14/500, no uppercase) */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;
  border:1px solid var(--line2);background:var(--card);color:var(--ink);font:500 14px/1 var(--sans);cursor:pointer;white-space:nowrap;
  transition:background-color .15s,border-color .15s,color .15s}
.btn:hover{border-color:var(--outline-h);color:var(--ink)}
.btn:active{transform:scale(.97)}
.btn:focus-visible,.theme-btn:focus-visible,.qa summary:focus-visible,.top .out:focus-visible,.mnav a:focus-visible,.nav .links a:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}
.btn.primary{background:var(--brand-fill);border-color:var(--brand-fill);color:var(--on-brand)}
.btn.primary:hover{background:var(--brand-fill-h);border-color:var(--brand-fill-h);color:var(--on-brand)}
.btn.primary:active{background:var(--brand-fill-p);border-color:var(--brand-fill-p)}
.btn.lg{height:48px;padding:0 22px;font-size:15px}
.btn.sm{height:32px;padding:0 12px;font-size:13px}
.btn svg{width:16px;height:16px;flex:none}
.btn[hidden]{display:none}
.theme-btn{width:36px;height:36px;display:inline-grid;place-items:center;padding:0;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--ink2);cursor:pointer;flex:none}
.theme-btn:hover{background:var(--hover);color:var(--ink)}
.theme-btn svg{width:18px;height:18px;display:block}
:root[data-theme="dark"] .theme-btn .i-moon,:root:not([data-theme="dark"]) .theme-btn .i-sun{display:none}

/* ---- pills / tags */
.pill{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:100px;background:var(--brand-tint);color:var(--brand-ink);font:500 13px/1 var(--sans);white-space:nowrap}
.tag{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:100px;font:500 12px/1 var(--sans);white-space:nowrap;background:var(--neu-tint);color:var(--neu-ink)}
.tag.red{background:var(--bad-tint);color:var(--bad-ink)}
.tag.green{background:var(--good-tint);color:var(--good-ink)}
.tag.warn{background:var(--warn-tint);color:var(--warn-ink)}
.tag .d{width:6px;height:6px;border-radius:50%;background:currentColor}

/* ---- brand mark: the extension icon (dark square, level lines), the middle line in the chart header's orange */
.logo{display:flex;align-items:center;gap:10px;flex:none;color:inherit}
.logo .m{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--rail);flex:none}
.logo .m svg{width:20px;height:20px;display:block}
:root[data-theme="dark"] .logo .m{background:#1C2A1E}
.logo b{font-weight:500;font-size:18px;letter-spacing:-.2px;color:var(--ink)}
.logo .by{font-size:13px;color:var(--ink3);margin-left:2px;white-space:nowrap}

/* ---- public nav (index, hunterbot, levels): sticky white bar */
.nav{position:sticky;top:0;z-index:50;background:var(--card);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:16px;height:64px}
.nav .links{display:flex;gap:4px;margin-left:20px}
.nav .links a{font-size:14px;font-weight:500;color:var(--ink2);padding:8px 12px;border-radius:8px;white-space:nowrap}
.nav .links a:hover{color:var(--ink);background:var(--hover)}
.nav .links a.on{color:var(--ink);background:var(--hover)}
.nav .right{margin-left:auto;display:flex;align-items:center;gap:8px}
@media(max-width:860px){.nav .links{display:none}}

/* ---- member bar (gexhunters, download; the dashboards' web layer copies this look): dark, like the rail */
.top{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;min-height:52px;padding:8px 16px;background:var(--mbar);border-bottom:1px solid var(--mbar-line);color:var(--mbar-ic)}
.top .logo b{color:#fff;font-size:16px}
.top .logo .m{background:rgba(255,255,255,.1)}
.mnav{display:flex;gap:4px;margin-left:12px;align-items:center;min-width:0}
.mnav a{color:var(--mbar-ic);text-decoration:none;font-size:13px;font-weight:500;height:32px;padding:0 12px;border-radius:8px;display:inline-flex;align-items:center;white-space:nowrap}
.mnav a:hover{color:#fff;background:rgba(255,255,255,.06)}
.mnav a.on{color:#fff;background:rgba(255,255,255,.1)}
.mnav .grp{display:inline-flex;align-items:center;height:32px;margin-left:10px;padding:0 10px 0 12px;border-left:1px solid rgba(255,255,255,.12);font-size:12px;color:var(--mbar-ic);white-space:nowrap}
.top .tools{margin-left:auto;display:flex;align-items:center;gap:8px}
.top .em{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mbar-ic);font-size:12px}
.top .em:empty{display:none}
.top .theme-btn{width:32px;height:32px;border:0;color:var(--mbar-ic)}
.top .theme-btn:hover{color:#fff;background:rgba(255,255,255,.06)}
.top .out{height:32px;padding:0 12px;font:500 13px var(--sans);color:#fff;cursor:pointer;background:transparent;border:1px solid rgba(255,255,255,.18);border-radius:8px}
.top .out:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.3)}
.top .out:active{transform:scale(.97)}

/* ---- page blocks */
.page{max-width:880px;margin:0 auto;padding:40px 24px 72px}
.page h1{font-weight:500;font-size:clamp(24px,4vw,28px);line-height:1.2;letter-spacing:-.24px;margin:0}
.lede{color:var(--ink2);font-size:15px;line-height:1.6;margin:8px 0 24px;max-width:62ch}
.lede b{color:var(--ink);font-weight:500}
.card{border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--sh-card)}
.subh{font:500 14px var(--sans);color:var(--ink3);margin:32px 0 12px}
.note{color:var(--ink3);font-size:12.5px;line-height:1.5;margin-top:10px}
.note b{color:var(--ink2);font-weight:500}
.note-warn{display:flex;gap:10px;align-items:flex-start;margin-top:16px;background:var(--warn-tint);border:1px solid var(--warn-line);border-radius:8px;
  padding:10px 12px;font-size:13px;color:var(--warn-ink);line-height:1.5}
.note-warn svg{width:16px;height:16px;flex:none;margin-top:1px}
.note-warn b{font-weight:500}
.note-info{display:flex;gap:10px;align-items:flex-start;margin-top:16px;background:var(--brand-tint);border:1px solid var(--brand-line);border-radius:8px;
  padding:10px 12px;font-size:13px;color:var(--brand-ink);line-height:1.5}
.note-info svg{width:16px;height:16px;flex:none;margin-top:1px}
.note-info b{font-weight:500}

section{padding:88px 0}
section + section{padding-top:0}
.sec-head{max-width:720px}
.sec-head h2{font-size:clamp(26px,3.6vw,36px);line-height:1.15;letter-spacing:-.5px;margin-top:16px}
.sec-head p{color:var(--ink2);font-size:16px;line-height:1.6;margin:14px 0 0;max-width:60ch}

/* ---- hero */
.hero{background:var(--card);border-bottom:1px solid var(--line)}
.hero .wrap{padding:72px 24px 80px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:56px;align-items:center}
.hero h1{font-size:clamp(34px,5vw,52px);line-height:1.08;letter-spacing:-.8px;margin:20px 0 0;color:var(--ink)}
.hero h1 .g{color:var(--brand-ink)}
.hero .lede{color:var(--ink2);font-size:17px;line-height:1.6;margin:20px 0 0;max-width:46ch}
.hero .cta{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.trust{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:32px;font-size:13px;color:var(--ink2)}
.trust span{display:inline-flex;align-items:center;gap:8px}
.trust svg{width:16px;height:16px;color:var(--good);flex:none}
@media(max-width:900px){.hero .wrap{grid-template-columns:minmax(0,1fr);gap:44px;padding:48px 24px 56px}}

/* ---- the chart card: TradingView dark chart with the overlay's bands, as the app and the extension draw them */
.chartcard{border-radius:16px;border:1px solid var(--line2);background:var(--chart);box-shadow:var(--sh-menu);overflow:hidden;color:var(--chart-ink);font-family:-apple-system,BlinkMacSystemFont,"Trebuchet MS",Roboto,Ubuntu,sans-serif}
.chartcard .tvbar{display:flex;align-items:center;gap:12px;height:38px;padding:0 12px;border-bottom:1px solid var(--chart-line);font-size:13px;color:var(--chart-ink)}
.chartcard .tvbar span{color:var(--chart-ink2)}
.chartcard .tvbar b{font-weight:600;color:var(--chart-ink)}
.chartcard .plot{position:relative;padding:0 0 0 0}
.chartcard svg{width:100%;height:auto;display:block}
.ghbox{position:absolute;top:10px;right:60px;background:var(--gh-box);border:1px solid #30363d;border-radius:6px;padding:6px 10px;font-size:11.5px;line-height:1.5;color:#c9d1d9;min-width:150px}
.ghbox .t{color:var(--gh);font-weight:700;letter-spacing:.3px;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px}
.ghbox .t svg{width:14px;height:14px;display:inline-block;color:#8b949e}
.ghbox .r{display:flex;justify-content:space-between;gap:12px}
.ghbox .r i{font-style:normal;color:#00E5FF}
.ghbox .g{color:var(--pos)}
@media(max-width:520px){.ghbox{right:44px;min-width:120px;font-size:10.5px}}

/* ---- grids */
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:860px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.grid3,.grid2{grid-template-columns:minmax(0,1fr)}}

/* feature / product cards */
.fcard{padding:24px;transition:border-color .15s;display:flex;flex-direction:column}
.fcard:hover{border-color:var(--outline-h)}
.fcard .ic{width:40px;height:40px;border-radius:8px;background:var(--brand-tint);color:var(--brand-ink);display:grid;place-items:center;margin-bottom:16px;flex:none}
.fcard .ic svg{width:20px;height:20px}
.fcard h3{font-size:16px}
.fcard p{color:var(--ink2);font-size:14px;line-height:1.6;margin:8px 0 0}
.fcard ul{margin:12px 0 0;padding:0 0 0 18px;color:var(--ink2);font-size:13.5px;line-height:1.7}
.fcard .foot{margin-top:auto;padding-top:16px}

/* steps (numbered like the dashboards' "Connect your PC" list) */
.steps{list-style:none;counter-reset:s;margin:0;padding:4px 20px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-card)}
.steps li{counter-increment:s;position:relative;padding:14px 0 14px 44px;border-top:1px solid var(--line);color:var(--ink2);font-size:14px;line-height:1.55}
.steps li:first-child{border-top:0}
.steps li::before{content:counter(s);position:absolute;left:0;top:12px;width:28px;height:28px;border-radius:8px;background:var(--brand-tint);display:grid;place-items:center;font-weight:500;color:var(--brand-ink);font-size:13px}
.steps li b{color:var(--ink);font-weight:500}

/* download cards (same shape as HunterBot's download page) */
.dl{padding:24px;display:flex;flex-direction:column}
.dl .head{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.dl .ic{width:40px;height:40px;border-radius:8px;background:var(--brand-tint);display:grid;place-items:center;color:var(--brand-ink);flex:none}
.dl .ic svg{width:22px;height:22px}
.dl h3{font-weight:500;font-size:16px;margin:0}
.dl .sz{font-size:12px;color:var(--ink3);margin-top:2px;font-variant-numeric:tabular-nums}
.dl .step{color:var(--ink2);font-size:14px;margin:0 0 20px;line-height:1.6}
.dl .step b{color:var(--ink);font-weight:500}
.dl .btn{align-self:flex-start}
.dl details{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.dl summary{cursor:pointer;color:var(--link);font-size:13px;font-weight:500;list-style:none;display:flex;align-items:center;gap:8px;width:max-content;max-width:100%}
.dl summary::-webkit-details-marker{display:none}
.dl summary:hover{color:var(--link-h)}
.dl summary .pl{width:18px;height:18px;display:grid;place-items:center;transition:transform .2s}
.dl summary .pl svg{width:14px;height:14px}
.dl details[open] summary .pl{transform:rotate(45deg)}
.dl details .steps{margin-top:12px;border:0;box-shadow:none;padding:0;background:transparent}
.dl details .steps li{padding-left:40px}

/* schedule table */
.sched{width:100%;border-collapse:collapse;font-size:14px}
.sched th{font-weight:500;color:var(--ink3);text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);font-size:13px}
.sched td{padding:12px;border-bottom:1px solid var(--line);color:var(--ink2);vertical-align:top}
.sched tr:last-child td{border-bottom:0}
.sched td b{color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}
.sched .card{overflow:hidden}

/* level rows */
.lv{display:flex;gap:14px;align-items:flex-start;padding:16px 20px;border-top:1px solid var(--line)}
.lv:first-child{border-top:0}
.lv .sw{width:36px;height:10px;border-radius:3px;flex:none;margin-top:6px;opacity:.9}
.lv .sw.band{height:14px;margin-top:4px;opacity:.55;border-left:0;position:relative}
.lv .sw.band::after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:inherit;opacity:1;transform:translateY(-50%)}
.lv b{display:block;color:var(--ink);font-weight:500;font-size:14px}
.lv p{margin:4px 0 0;color:var(--ink2);font-size:13.5px;line-height:1.55}
.lv .how{color:var(--ink3);font-size:12.5px;margin-top:4px}
.regime{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.regime .card{padding:20px 24px}
.regime h3{font-size:15px;display:flex;align-items:center;gap:8px}
.regime h3 i{font-style:normal;font-weight:700;font-family:var(--mono)}
.regime p{color:var(--ink2);font-size:14px;line-height:1.6;margin:8px 0 0}
@media(max-width:620px){.regime{grid-template-columns:minmax(0,1fr)}}

/* faq */
.faq{margin-top:40px;max-width:800px;display:flex;flex-direction:column;gap:8px}
.qa{border-radius:12px;overflow:hidden}
.qa summary{cursor:pointer;padding:18px 20px;font-weight:500;font-size:15px;list-style:none;display:flex;align-items:center;gap:12px;border-radius:12px}
.qa summary::-webkit-details-marker{display:none}
.qa summary .pl{margin-left:auto;width:24px;height:24px;flex:none;display:grid;place-items:center;border-radius:6px;color:var(--ink3);transition:transform .2s}
.qa summary .pl svg{width:16px;height:16px}
.qa summary:hover .pl{color:var(--ink)}
.qa[open] summary .pl{transform:rotate(45deg)}
.qa .ans{padding:0 20px 20px;color:var(--ink2);font-size:14px;line-height:1.65}
.qa .ans b{color:var(--ink);font-weight:500}

/* second product band (HunterBot on the GexHunters landing) */
.second{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;padding:40px;margin-top:40px}
.second h3{font-size:22px;letter-spacing:-.3px}
.second p{color:var(--ink2);font-size:15px;line-height:1.6;margin:12px 0 0}
.second .cta{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.second ul{margin:16px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;color:var(--ink2);font-size:14px}
.second li{display:flex;gap:10px;align-items:flex-start}
.second li svg{width:16px;height:16px;flex:none;color:var(--good);margin-top:2px}
@media(max-width:860px){.second{grid-template-columns:minmax(0,1fr);padding:24px}}

/* final band + risk (TradeZella's deep band, in the rail green) */
section.final{padding-bottom:0}
.final .band{background:var(--band);border-radius:16px;padding:56px 24px;text-align:center;color:#fff}
:root[data-theme="dark"] .final .band{border:1px solid var(--line)}
.final .pill{background:rgba(255,255,255,.1);color:#fff}
.final h2{font-size:clamp(26px,4vw,38px);line-height:1.15;letter-spacing:-.5px;margin-top:16px;color:#fff}
.final .band p{color:var(--band-ink);font-size:16px;line-height:1.6;margin:14px auto 28px;max-width:46ch}
.risk{display:flex;gap:14px;align-items:flex-start;padding:20px 24px;margin-top:16px}
.risk .ic{width:32px;height:32px;border-radius:8px;flex:none;display:grid;place-items:center;background:var(--warn-tint);color:var(--warn-ink)}
.risk .ic svg{width:18px;height:18px}
.risk p{margin:0;font-size:13px;color:var(--ink3);line-height:1.65}
.risk b{color:var(--ink2);font-weight:500}

/* footer */
footer{background:var(--card);border-top:1px solid var(--line);padding:32px 0 36px;margin-top:88px}
footer .wrap{display:flex;gap:16px 24px;flex-wrap:wrap;align-items:center}
footer .fl{display:flex;gap:8px 20px;font-size:14px;color:var(--ink2);flex-wrap:wrap}
footer .fl a:hover{color:var(--ink)}
footer .cp{margin-left:auto;font-size:13px;color:var(--ink3)}
.disc{max-width:var(--maxw);margin:20px auto 0;padding:20px 24px 0;font-size:12px;color:var(--ink3);line-height:1.6;border-top:1px solid var(--line)}

/* a configured link that isn't filled in yet (site-config.js): the button stays, says so, and doesn't click */
a.soon{opacity:.55;cursor:default;pointer-events:none}
a.soon::after{content:" · link coming soon";font-weight:400;color:var(--ink3)}
.btn.soon{white-space:normal;height:auto;min-height:40px;padding:10px 16px;text-align:center;line-height:1.3}

/* a page that waits for the sign-in check: nothing flashes before the gate answers */
body[data-gate]{visibility:hidden}
body[data-gate="ok"]{visibility:visible}

@media(max-width:560px){
  .wrap{padding:0 16px}
  .hero .wrap{padding:40px 16px 48px}
  .nav .wrap{gap:8px}
  .nav .right .btn.primary{display:none}
  section{padding:56px 0}
  .disc{padding:20px 16px 0}
  .risk{padding:16px}
  .final .band{padding:44px 20px}
  footer{margin-top:56px}
  footer .cp{margin-left:0;width:100%}
  .top{padding:8px 12px}
  .mnav{order:3;width:100%;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .mnav .grp{margin-left:4px}
  .top .em{display:none}
  .page{padding:28px 16px 56px}
  .dl,.lv{padding:16px}
  .dl .btn{align-self:stretch}
  .steps{padding:4px 14px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
