.welcome-page { display:block; margin:0; color:var(--text); background:var(--bg); font-family:Arial,Helvetica,sans-serif; line-height:1.6; }
.welcome-page * { box-sizing:border-box; }
.welcome-page a { color:inherit; }
.welcome-header,.welcome-main,.welcome-footer { width:min(1200px,100% - 64px); margin-inline:auto; }
.welcome-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:28px; border-bottom:1px solid var(--border); }
.welcome-brand { display:flex; align-items:center; gap:12px; font-size:20px; font-weight:750; text-decoration:none; letter-spacing:-.04em; }
.welcome-brand > span { width:34px; height:34px; background:currentColor; -webkit-mask:url('favicon.svg') center/contain no-repeat; mask:url('favicon.svg') center/contain no-repeat; }
.welcome-header nav,.welcome-footer nav { display:flex; align-items:center; gap:28px; font-size:13px; }
.welcome-header nav a,.welcome-footer nav a { text-decoration:none; }
.welcome-header nav a:hover,.welcome-footer nav a:hover { text-decoration:underline; text-underline-offset:4px; }
.welcome-signin { border:1px solid var(--border); border-radius:100px; padding:10px 20px; }
.welcome-kicker { margin:0 0 16px; font-size:10px; font-weight:700; letter-spacing:.12em; color:var(--text-meta); }
.welcome-hero { padding:86px 0 62px; }
.welcome-page h1,.welcome-page h2,.welcome-page h3,.welcome-page p { overflow-wrap:break-word; }
.welcome-page h1 { margin:0; max-width:1100px; font-size:clamp(48px,7.9vw,102px); letter-spacing:-.065em; line-height:1.02; font-weight:700; }
.welcome-page em { font-weight:400; }
.welcome-hero-bottom { margin-top:36px; display:flex; justify-content:space-between; gap:36px; align-items:end; }
.welcome-hero-bottom > p { max-width:540px; margin:0; font-size:17px; color:var(--text-meta); }
.welcome-actions { display:grid; gap:14px; flex-shrink:0; }
.welcome-cta { display:inline-flex; align-items:center; justify-content:center; gap:28px; padding:15px 24px; border-radius:100px; font-size:14px; font-weight:700; color:var(--bg) !important; background:var(--text); text-decoration:none; }
.welcome-cta:hover { opacity:.83; }
.welcome-text-link { display:inline-block; font-size:13px; text-underline-offset:5px; }
.welcome-demo { border:1px solid var(--border); border-radius:22px; padding:30px; background:var(--bg-card,var(--bg)); }
.welcome-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:28px; }
.welcome-page h2 { font-size:clamp(27px,3.4vw,42px); line-height:1.1; letter-spacing:-.045em; margin:0; }
.welcome-demo .welcome-section-head h2 { font-size:clamp(25px,2.5vw,32px); }
.welcome-demo-label { flex-shrink:0; font-size:10px; color:var(--text-meta); border:1px solid var(--border); border-radius:100px; padding:6px 10px; }
.welcome-demo-tabs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
.welcome-demo-tabs button { font:inherit; font-size:12px; color:var(--text-meta); background:transparent; border:1px solid var(--border); border-radius:100px; padding:9px 15px; cursor:pointer; }
.welcome-demo-tabs button[aria-selected="true"] { color:var(--bg); background:var(--text); border-color:var(--text); }
.welcome-demo-flow { display:grid; grid-template-columns:1fr 1fr 1fr; gap:28px; }
.welcome-demo-flow article { position:relative; padding:22px; border:1px solid var(--border); border-radius:12px; }
.welcome-demo-flow article + article::before { content:'→'; position:absolute; left:-24px; top:45%; color:var(--text-meta); }
.welcome-demo-flow h3 { margin:0 0 12px; font-size:20px; line-height:1.2; letter-spacing:-.025em; }
.welcome-demo-flow p:not(.welcome-kicker),.welcome-demo-footnote { font-size:12px; color:var(--text-meta); }
.welcome-demo-flow .welcome-kicker { font-size:9px; }
.welcome-demo-source { display:block; margin-top:24px; color:var(--text-meta); font-size:10px; }
.welcome-demo-metrics { display:flex; flex-wrap:wrap; gap:22px; border-top:1px solid var(--border); padding-top:15px; margin-top:20px; }
.welcome-demo-metrics span { display:block; font-size:9px; color:var(--text-meta); }
.welcome-demo-metrics strong { font-size:23px; letter-spacing:-.04em; }
.welcome-demo-metrics small { font-size:11px; font-weight:400; color:var(--text-meta); }
[data-demo-score] { color:var(--accent,var(--text)); }
[data-demo-score][data-tone="negative"] { color:var(--down,#df6969); }
.welcome-demo-companies ul { list-style:none; margin:0; padding:0; }
.welcome-demo-companies li { padding:11px 0; border-bottom:1px solid var(--border); }
.welcome-demo-companies li:first-child { padding-top:0; }
.welcome-demo-companies li strong { display:block; font-size:13px; }
.welcome-demo-companies li span { font-size:10px; color:var(--text-meta); }
.welcome-demo-footnote { margin:22px 0 0; max-width:830px; }
.welcome-visuals { padding-top:90px; }
.welcome-visuals .welcome-section-head > p { color:var(--text-meta); font-size:13px; }
.welcome-preview-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.welcome-visual-card { min-width:0; margin:0; padding:26px; border:1px solid var(--border); border-radius:18px; background:var(--bg-card,var(--bg)); }
.welcome-network-preview { grid-column:1/-1; }
.welcome-visual-card figcaption { display:flex; align-items:start; justify-content:space-between; gap:18px; margin-bottom:18px; }
.welcome-visual-card .welcome-kicker { display:block; font-size:9px; margin-bottom:7px; }
.welcome-visual-card h3 { margin:0; font-size:23px; letter-spacing:-.035em; line-height:1.2; }
.welcome-visual-card svg { display:block; width:100%; height:auto; color:var(--text); font-family:Arial,Helvetica,sans-serif; }
.welcome-visual-card > p { margin:18px 0 0; color:var(--text-meta); font-size:12px; }
.welcome-network-stage { overflow:auto; }
.welcome-network-stage svg { min-width:640px; }
.welcome-visual-card > .welcome-network-hint { display:none; }
.welcome-preview-legend { display:flex; flex-wrap:wrap; gap:22px; font-size:10px; color:var(--text-meta); padding-top:12px; border-top:1px solid var(--border); }
.welcome-preview-legend > span { display:inline-flex; align-items:center; gap:7px; }
.welcome-preview-legend i { display:block; width:7px; height:7px; border-radius:50%; }
.welcome-legend-cluster { background:var(--accent,var(--text)); }
.welcome-legend-stock { background:#b99cdb; }
.welcome-legend-news { background:var(--text-meta); }
.welcome-chart-disclosure { display:block; color:var(--text-meta); margin-top:10px; font-size:9px; }
.welcome-how { display:grid; grid-template-columns:1fr 1fr; gap:90px; padding:100px 0; border-bottom:1px solid var(--border); }
.welcome-how > div > p:not(.welcome-kicker),.welcome-plans > div > p:not(.welcome-kicker) { max-width:430px; font-size:15px; color:var(--text-meta); }
.welcome-steps { list-style:none; margin:0; padding:0; }
.welcome-steps li { display:flex; gap:22px; padding:22px 0; border-top:1px solid var(--border); }
.welcome-steps li > span { font-size:12px; color:var(--text-meta); }
.welcome-steps h3 { font-size:18px; line-height:1.2; margin:0 0 8px; }
.welcome-steps p { font-size:13px; color:var(--text-meta); margin:0; }
.welcome-features { padding:90px 0; }
.welcome-features .welcome-section-head > p { max-width:310px; margin:0; font-size:14px; color:var(--text-meta); }
.welcome-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--border); border-left:1px solid var(--border); margin-top:40px; }
.welcome-feature-grid article { padding:30px; border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
.welcome-feature-grid article > span { font-size:9px; color:var(--text-meta); letter-spacing:.08em; }
.welcome-feature-grid h3 { margin:28px 0 12px; font-size:22px; line-height:1.15; letter-spacing:-.035em; }
.welcome-feature-grid p { font-size:13px; color:var(--text-meta); margin:0; }
.welcome-plans { display:grid; grid-template-columns:1fr 1fr 1fr; gap:24px; padding:36px 0 90px; border-bottom:1px solid var(--border); }
.welcome-plans > div { padding-right:24px; }
.welcome-plans article { padding:28px; border:1px solid var(--border); border-radius:18px; }
.welcome-plans h3 { margin:0; font-size:22px; line-height:1.2; }
.welcome-price { font-size:38px; margin:24px 0; letter-spacing:-.05em; }
.welcome-price small { font-size:13px; letter-spacing:0; color:var(--text-meta); }
.welcome-plans ul { padding-left:16px; min-height:115px; font-size:13px; color:var(--text-meta); }
.welcome-plans li { padding-bottom:8px; }
.welcome-pro-plan { background:var(--bg-card,var(--bg)); border-color:var(--text-meta) !important; }
.welcome-plan-note { font-size:10px; color:var(--text-meta); margin:12px 0 0; }
.welcome-faq { display:grid; grid-template-columns:1fr 1.5fr; gap:65px; padding:90px 0; }
.welcome-faq details { border-top:1px solid var(--border); padding:20px 0; }
.welcome-faq summary { cursor:pointer; font-size:16px; font-weight:600; }
.welcome-faq details p { margin-bottom:0; font-size:13px; color:var(--text-meta); }
.welcome-final { text-align:center; border-top:1px solid var(--border); padding:70px 0; }
.welcome-final h2 { margin-bottom:30px; }
.welcome-final .welcome-text-link { display:block; margin-top:18px; }
.welcome-footer { border-top:1px solid var(--border); padding:24px 0 36px; display:flex; flex-wrap:wrap; gap:20px; justify-content:space-between; font-size:11px; color:var(--text-meta); }
.welcome-footer strong { color:var(--text); }
.welcome-footer > p { flex-basis:100%; margin:0; font-size:10px; }
.welcome-skip { position:absolute; top:-100px; left:20px; padding:12px; color:var(--bg) !important; background:var(--text); z-index:10; }
.welcome-skip:focus { top:12px; }
.welcome-page :focus-visible { outline:2px solid var(--text); outline-offset:4px; }
@media(max-width:900px) {
  .welcome-header,.welcome-main,.welcome-footer { width:calc(100% - 40px); }
  .welcome-header nav { gap:16px; }
  .welcome-hero-bottom { align-items:start; flex-direction:column; }
  .welcome-demo { padding:22px; }
  .welcome-demo-flow { gap:18px; }
  .welcome-demo-flow article { padding:16px; }
  .welcome-demo-flow article + article::before { left:-17px; }
  .welcome-section-head { align-items:start; flex-direction:column; gap:18px; }
  .welcome-how { gap:40px; }
  .welcome-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .welcome-plans { grid-template-columns:1fr 1fr; }
  .welcome-plans > div { grid-column:1/-1; }
}
@media(max-width:600px) {
  .welcome-visual-card > .welcome-network-hint { display:block; margin:10px 0; font-size:10px; }
  .welcome-visuals { padding-top:60px; }
  .welcome-preview-grid { grid-template-columns:1fr; }
  .welcome-visual-card { padding:20px 16px; }
  .welcome-visual-card figcaption { flex-direction:column; gap:12px; }
  .welcome-header { padding-block:20px; gap:12px; }
  .welcome-brand { font-size:17px; gap:8px; }
  .welcome-brand > span { width:26px; height:26px; }
  .welcome-header nav > a:not(.welcome-signin) { display:none; }
  .welcome-signin { padding:9px 14px; }
  .welcome-hero { padding:56px 0 40px; }
  .welcome-page h1 { font-size:clamp(42px,10vw,60px); }
  .welcome-hero-bottom { margin-top:24px; gap:24px; }
  .welcome-hero-bottom > p { font-size:15px; }
  .welcome-demo { padding:20px 16px; border-radius:16px; }
  .welcome-demo-flow { grid-template-columns:1fr; gap:24px; }
  .welcome-demo-flow article + article::before { content:'↓'; left:50%; top:-25px; }
  .welcome-how,.welcome-faq { grid-template-columns:1fr; gap:28px; padding:60px 0; }
  .welcome-features { padding:60px 0; }
  .welcome-feature-grid { grid-template-columns:1fr; margin-top:28px; }
  .welcome-feature-grid article { padding:25px; }
  .welcome-feature-grid h3 { margin-top:18px; }
  .welcome-plans { grid-template-columns:1fr; padding:0 0 55px; }
  .welcome-plans ul { min-height:0; margin-bottom:24px; }
  .welcome-footer nav { flex-wrap:wrap; gap:14px; }
}
