/* Public website pages — scoped away from ticker and watchlist layouts. */
.top-nav { display:flex; align-items:center; gap:.35rem; }
.top-nav a { padding:.62rem .8rem; border-radius:8px; color:#aab9cd; font-size:.88rem; font-weight:700; }
.top-nav a:hover { color:#f3f7fc; background:rgba(255,255,255,.05); }

.public-page-shell { max-width:1320px; padding-top:1.25rem; }
.public-hero {
  position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.65fr);
  gap:clamp(2rem,5vw,5rem); align-items:center; min-height:570px; padding:clamp(2.4rem,6vw,5.4rem);
  overflow:hidden; border:1px solid rgba(159,188,216,.15); border-radius:22px;
  background:linear-gradient(90deg,rgba(5,13,24,.96),rgba(7,19,34,.87) 54%,rgba(8,18,30,.7)),url('/assets/2bb-market-bg.webp') center/cover;
}
.public-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(rgba(133,176,210,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(133,176,210,.035) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(90deg,#000,transparent 80%); }
.public-hero::after { content:""; position:absolute; width:390px; height:390px; right:-120px; top:-130px; z-index:-1; border-radius:50%; background:rgba(46,174,204,.13); filter:blur(70px); }
.public-hero-copy { max-width:760px; }
.public-hero h1 { max-width:12ch; margin:.7rem 0 1.35rem; font-size:clamp(3.4rem,6.8vw,6.2rem); line-height:.92; letter-spacing:-.075em; }
.public-hero h1 span { color:#8acbdc; }
.public-hero-copy>p { max-width:61ch; margin:0; color:#b2bfd0; font-size:1.08rem; line-height:1.7; }
.hero-trust { display:flex; flex-wrap:wrap; gap:1rem 1.35rem; margin-top:2.25rem; color:#91a4bb; font-size:.78rem; font-weight:700; }
.hero-trust>span { display:inline-flex; align-items:center; gap:.45rem; }
.public-icon { display:inline-grid; place-items:center; width:1.25rem; height:1.25rem; color:#78c6d8; }
.public-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }

.hero-brief { padding:1.25rem 1.35rem; border:1px solid rgba(151,190,215,.18); border-radius:17px; background:rgba(8,20,35,.82); backdrop-filter:blur(14px); box-shadow:0 28px 80px rgba(0,0,0,.25); }
.brief-head,.brief-step { display:flex; align-items:center; }
.brief-head { justify-content:space-between; padding:.15rem .1rem 1rem; color:#8092a9; font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; }
.brief-head strong { color:#8ed0df; font-size:1rem; }
.brief-step { gap:1rem; padding:1.05rem .1rem; border-top:1px solid rgba(255,255,255,.08); }
.brief-step>b { color:#517087; font-size:.7rem; }
.brief-step div { display:grid; gap:.18rem; }
.brief-step strong { font-size:.92rem; }
.brief-step span { color:#8294aa; font-size:.78rem; }
.hero-brief>a { display:flex; justify-content:space-between; margin-top:.65rem; padding-top:1rem; border-top:1px solid rgba(255,255,255,.08); color:#86cddd; font-size:.82rem; font-weight:750; }
.hero-brief h2 { margin:.35rem 0 .55rem; font-size:1.65rem; letter-spacing:-.045em; }
.hero-brief>p { margin:0 0 1.15rem; color:#8294aa; font-size:.84rem; line-height:1.55; }
.hero-search { display:grid; grid-template-columns:1fr auto; gap:.5rem; margin:.7rem 0 1rem; }
.hero-search input { min-width:0; padding:.85rem .9rem; border:1px solid rgba(151,190,215,.2); border-radius:9px; background:#071321; color:#e9f3fb; outline:none; }
.hero-search input:focus { border-color:#6fc3d7; box-shadow:0 0 0 3px rgba(111,195,215,.1); }
.hero-search button { padding:.8rem 1rem; border:0; border-radius:9px; background:#83ccdc; color:#06111f; font-weight:800; cursor:pointer; }

.coverage-strip { display:grid; grid-template-columns:repeat(4,1fr); margin:1rem 0 4.5rem; border:1px solid rgba(153,181,209,.13); border-radius:16px; background:#0b1725; overflow:hidden; }
.coverage-strip>div { min-width:0; min-height:108px; padding:1.25rem 1.4rem; border-right:1px solid rgba(153,181,209,.1); }
.coverage-strip>div:last-child { border-right:0; }
.coverage-strip .stat-icon { display:none; }
.coverage-strip .card-label { display:block; }
.coverage-strip strong { display:block; margin:.45rem 0 .2rem; font-size:1.65rem; letter-spacing:-.045em; }
.coverage-strip p { margin:0; color:#74869d; font-size:.75rem; line-height:1.45; }

.home-feature-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(330px,.7fr); gap:1rem; align-items:start; margin-bottom:4.5rem; }
.playbooks-section,.earnings-section,.market-leaders-section { margin-bottom:4.5rem; }
.playbooks-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.home-svg-icon { display:inline-grid; place-items:center; flex:0 0 auto; width:1.1rem; height:1.1rem; }
.home-svg-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.playbook-card { position:relative; isolation:isolate; min-width:0; padding:1.35rem; overflow:hidden; border:1px solid rgba(153,181,209,.14); border-radius:16px; background:linear-gradient(150deg,#0d1d2c,#091522); transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.playbook-card:nth-child(2) { background:linear-gradient(150deg,#10202c,#0a1722); }
.playbook-card:nth-child(3) { background:linear-gradient(150deg,#151d2c,#0b1523); }
.playbook-card:hover,.playbook-card:focus-within { transform:translateY(-6px); border-color:rgba(112,206,225,.38); box-shadow:0 22px 55px rgba(0,0,0,.28); }
.playbook-glow { position:absolute; z-index:-1; width:180px; height:180px; right:-90px; top:-100px; border-radius:50%; background:rgba(76,194,218,.16); filter:blur(45px); opacity:.35; transition:opacity .3s ease,transform .3s ease; }
.playbook-card:nth-child(2) .playbook-glow { background:rgba(90,216,176,.14); }
.playbook-card:nth-child(3) .playbook-glow { background:rgba(162,131,244,.16); }
.playbook-card:hover .playbook-glow,.playbook-card:focus-within .playbook-glow { opacity:1; transform:scale(1.2); }
.playbook-head { display:flex; align-items:start; justify-content:space-between; gap:1rem; }
.playbook-title-wrap { display:flex; align-items:center; gap:.8rem; min-width:0; }
.playbook-icon { width:2.5rem; height:2.5rem; padding:.58rem; border:1px solid rgba(125,205,222,.2); border-radius:11px; color:#8bd2e1; background:rgba(107,204,224,.08); transition:transform .28s ease,background .28s ease; }
.playbook-card:hover .playbook-icon { transform:rotate(-5deg) scale(1.08); background:rgba(107,204,224,.15); }
.playbook-head h3 { margin:.45rem 0 .2rem; font-size:1.35rem; letter-spacing:-.04em; }
.playbook-risk,.playbook-count { color:#82cddd; font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.playbook-count { color:#71849a; white-space:nowrap; }
.playbook-subtitle { display:block; color:#aebed0; font-size:.82rem; }
.playbook-card>p { min-height:3.7em; margin:.65rem 0 1.1rem; color:#7f91a6; font-size:.78rem; line-height:1.55; }
.playbook-list { border-top:1px solid rgba(255,255,255,.08); }
.playbook-row { display:grid; grid-template-columns:1.4rem minmax(0,1fr) auto auto; gap:.7rem; align-items:center; margin:0 -.45rem; padding:.8rem .45rem; border-bottom:1px solid rgba(255,255,255,.07); border-radius:8px; transition:background .2s ease,transform .2s ease; }
.playbook-row>b { color:#526b7f; font-size:.7rem; }
.playbook-row>span { display:grid; min-width:0; }
.playbook-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.82rem; }
.playbook-row small { overflow:hidden; color:#71849a; font-size:.65rem; text-overflow:ellipsis; white-space:nowrap; }
.playbook-row .playbook-score { color:#9cd7e4; font-weight:850; text-align:right; }
.playbook-row:hover,.playbook-row:focus-visible { background:rgba(126,205,222,.07); transform:translateX(4px); }
.playbook-row:hover strong { color:#8ed3e2; }
.row-arrow { width:0; overflow:hidden; color:#8bd2e1; opacity:0; transition:width .2s ease,opacity .2s ease; }
.playbook-row:hover .row-arrow,.playbook-row:focus-visible .row-arrow { width:1.1rem; opacity:1; }
.playbook-method { display:flex; align-items:center; gap:.35rem; width:max-content; margin-top:1rem; color:#7fc8d9; font-size:.73rem; font-weight:750; }
.playbook-method .home-svg-icon { width:.85rem; height:.85rem; transition:transform .2s ease; }
.playbook-method:hover .home-svg-icon { transform:translateX(4px); }
.home-intelligence-grid { margin-top:0; }
.change-list { display:grid; }
.change-row { display:grid; grid-template-columns:minmax(110px,1.3fr) 1fr 1fr auto; gap:1rem; align-items:center; margin:0 -.35rem; padding:.82rem .75rem; border-bottom:1px solid rgba(255,255,255,.07); border-radius:9px; transition:background .2s ease,transform .2s ease; }
.change-row:hover,.change-row:focus-visible { background:rgba(126,205,222,.065); transform:translateX(4px); }
.change-row>span { display:grid; }
.change-row small { color:#71849a; font-size:.67rem; }
.change-row b { font-size:.82rem; }
.change-row em { display:flex; align-items:center; justify-content:center; gap:.18rem; min-width:3.6rem; padding:.35rem .5rem; border-radius:8px; font-size:.78rem; font-style:normal; font-weight:850; text-align:center; }
.change-row em .home-svg-icon { width:.8rem; height:.8rem; }
.change-row em.positive { color:#6fdfb2; background:rgba(50,190,135,.1); }
.change-row em.negative { color:#ff8f9d; background:rgba(230,75,95,.1); }
.data-note { margin:1rem .4rem 0; color:#687b91; font-size:.68rem; }
.empty-intelligence { min-height:240px; display:grid; place-content:center; text-align:center; }
.empty-intelligence strong { font-size:1rem; }
.empty-intelligence p { max-width:40ch; color:#7f91a6; font-size:.8rem; }
.earnings-radar-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; }
.earnings-radar-card { position:relative; padding:1rem; overflow:hidden; border:1px solid rgba(153,181,209,.11); border-radius:12px; background:#0e1d2d; transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease; }
.earnings-radar-card:hover,.earnings-radar-card:focus-visible { transform:translateY(-4px); border-color:rgba(118,204,222,.35); box-shadow:0 16px 34px rgba(0,0,0,.22); }
.earnings-card-icon { position:absolute; right:-6px; top:35px; color:#6fc7da; opacity:.055; transform:rotate(-8deg); transition:opacity .25s ease,transform .25s ease; }
.earnings-card-icon .home-svg-icon { width:5.5rem; height:5.5rem; }
.earnings-radar-card:hover .earnings-card-icon { opacity:.12; transform:rotate(0) scale(1.05); }
.earnings-radar-card>div { position:relative; display:flex; justify-content:space-between; gap:.6rem; }
.earnings-radar-card>div>span { color:#7e91a7; font-size:.66rem; }
.earnings-radar-card>p { height:2.5em; margin:.55rem 0 .8rem; overflow:hidden; color:#91a3b7; font-size:.74rem; line-height:1.3; }
.earnings-meta { display:flex; justify-content:space-between; gap:.5rem; padding:.65rem 0; border-top:1px solid rgba(255,255,255,.07); border-bottom:1px solid rgba(255,255,255,.07); color:#75889e; font-size:.65rem; }
.earnings-meta b { color:#c7d6e4; }
.earnings-radar-card>small { position:relative; display:flex; align-items:center; justify-content:space-between; gap:.4rem; margin-top:.7rem; color:#79c8d9; font-size:.66rem; }
.earnings-radar-card>small .home-svg-icon { width:.85rem; height:.85rem; opacity:0; transform:translateX(-5px); transition:opacity .2s ease,transform .2s ease; }
.earnings-radar-card:hover>small .home-svg-icon { opacity:1; transform:none; }
.section-intro { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:1.25rem; }
.section-intro h2 { margin:.25rem 0 0; font-size:clamp(1.8rem,3vw,2.65rem); letter-spacing:-.055em; }
.section-intro>p { max-width:37ch; margin:0; color:#8293a9; font-size:.9rem; line-height:1.55; }
.home-data-panel,.home-watchlist-panel { border:1px solid rgba(153,181,209,.13); border-radius:16px; background:#0b1725; padding:1.25rem; }
.home-data-panel .section-head { margin-bottom:1rem; }
.home-data-panel .section-head .eyebrow,.home-data-panel .section-head h2 { display:none; }
.home-data-panel .company-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.home-data-panel .company-card { min-height:10rem; border-radius:12px; background:#0e1d2d; }
.home-data-panel .company-card { transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease; }
.home-data-panel .company-card:hover,.home-data-panel .company-card:focus-visible { transform:translateY(-5px); box-shadow:0 16px 35px rgba(0,0,0,.2); }
.home-watchlist-panel { margin-top:5.15rem; }

.home-explain { margin-bottom:4.5rem; }
.explain-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(153,181,209,.16); border-bottom:1px solid rgba(153,181,209,.16); }
.explain-grid article { min-height:220px; padding:2rem 2rem 2rem 0; }
.explain-grid article+article { padding-left:2rem; border-left:1px solid rgba(153,181,209,.13); }
.explain-grid>article>span { display:inline-grid; place-items:center; width:2.4rem; height:2.4rem; border-radius:10px; background:rgba(105,199,220,.08); }
.explain-grid h3 { margin:1.15rem 0 .55rem; font-size:1.1rem; }
.explain-grid p { max-width:35ch; margin:0; color:#8293a9; font-size:.88rem; line-height:1.65; }
.home-cta { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:2.3rem 2.5rem; border:1px solid rgba(130,201,218,.2); border-radius:17px; background:linear-gradient(105deg,#0d2030,#0d1827); }
.home-cta { transition:border-color .25s ease,box-shadow .25s ease; }
.home-cta:hover { border-color:rgba(130,201,218,.4); box-shadow:0 18px 50px rgba(0,0,0,.2); }
.home-cta h2 { margin:.35rem 0 0; font-size:clamp(1.55rem,3vw,2.4rem); letter-spacing:-.05em; }

.info-hero { max-width:980px; padding:clamp(3rem,8vw,7rem) 0 4rem; }
.info-hero h1 { max-width:15ch; margin:.65rem 0 1.25rem; font-size:clamp(3.2rem,7vw,6rem); line-height:.98; letter-spacing:-.07em; }
.info-hero p { max-width:66ch; margin:0; color:#9cacc0; font-size:1.08rem; line-height:1.75; }
.info-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:clamp(3rem,8vw,8rem); padding-bottom:4rem; }
.info-content article { padding:2rem 0; border-top:1px solid rgba(153,181,209,.15); }
.info-content h2 { margin:0 0 .7rem; font-size:1.35rem; letter-spacing:-.035em; }
.info-content p { max-width:70ch; margin:0; color:#91a1b5; line-height:1.75; }
.info-aside { position:sticky; top:7rem; align-self:start; display:grid; gap:.35rem; padding:1.5rem; border:1px solid rgba(153,181,209,.14); border-radius:15px; background:#0c1827; }
.info-aside strong { margin-top:1rem; font-size:.9rem; }
.info-aside p,.info-aside small { margin:0; color:#8293a8; font-size:.8rem; line-height:1.5; }
.info-aside>a { margin-top:1.25rem; color:#89cfdf; font-size:.86rem; font-weight:750; }
.info-aside>a.primary { color:#06111f; text-align:center; }

.footer { display:grid; grid-template-columns:1.2fr auto 1fr; align-items:center; gap:2rem; padding:2.1rem max(1rem,calc((100vw - 1240px)/2)); border-top:1px solid var(--line); color:#7e8fa5; }
.footer-brand { display:grid; gap:.25rem; }
.footer-brand strong { color:#e9f1fa; }
.footer-brand span,.footer-note { font-size:.76rem; }
.footer nav { display:flex; flex-wrap:wrap; gap:1.25rem; font-size:.78rem; }
.footer nav a:hover { color:#dce9f5; }
.footer-note { text-align:right; }

@media(max-width:1020px){
  .top-nav a:not(:first-child){display:none}.public-hero{grid-template-columns:1fr;min-height:auto}.hero-brief{max-width:520px}.playbooks-grid{grid-template-columns:1fr}.home-feature-grid{grid-template-columns:1fr}.home-watchlist-panel{margin-top:0}.home-data-panel .company-grid{grid-template-columns:repeat(2,1fr)}.earnings-radar-grid{grid-template-columns:repeat(2,1fr)}.info-layout{grid-template-columns:1fr}.info-aside{position:static}.footer{grid-template-columns:1fr}.footer-note{text-align:left}
}
@media(max-width:700px){
  .public-page-shell{width:min(100% - 1rem,1320px)}.public-hero{padding:2rem 1.3rem;border-radius:16px}.public-hero h1{font-size:clamp(3rem,15vw,4.5rem)}.hero-trust{display:grid}.coverage-strip{grid-template-columns:repeat(2,1fr);margin-bottom:3rem}.coverage-strip>div:nth-child(2){border-right:0}.coverage-strip>div:nth-child(-n+2){border-bottom:1px solid rgba(153,181,209,.1)}.section-intro{display:block}.section-intro>p{margin-top:.65rem}.home-data-panel .company-grid,.explain-grid,.earnings-radar-grid{grid-template-columns:1fr}.change-row{grid-template-columns:1fr auto auto}.change-row>span:nth-child(2){display:none}.explain-grid article+article{padding-left:0;border-left:0;border-top:1px solid rgba(153,181,209,.13)}.explain-grid article{min-height:0;padding:1.5rem 0}.home-cta{display:block;padding:1.5rem}.home-cta .primary{display:inline-flex;margin-top:1.25rem}.info-hero{padding-top:3rem}.info-hero h1{font-size:3.3rem}.footer nav{gap:.8rem 1.1rem}
}
@media(prefers-reduced-motion:reduce){
  .playbook-card,.playbook-icon,.playbook-glow,.playbook-row,.row-arrow,.playbook-method .home-svg-icon,.change-row,.earnings-radar-card,.earnings-card-icon,.earnings-radar-card>small .home-svg-icon,.home-data-panel .company-card,.home-cta{transition:none!important;transform:none!important}
}
