:root {
  --pearl: #fbfaf6;
  --paper: #ffffff;
  --navy: #071331;
  --navy-2: #15264c;
  --muted: #63708d;
  --line: #dde4ef;
  --line-soft: #e9edf4;
  --cobalt: #0757f7;
  --cobalt-dark: #003dc6;
  --blue-soft: #edf3ff;
  --gold: #c88613;
  --gold-2: #efb94e;
  --gold-soft: #fff8ea;
  --green: #058b57;
  --red: #c83b45;
  --shadow: 0 14px 38px rgba(22, 42, 82, 0.08);
  --shadow-soft: 0 6px 20px rgba(22, 42, 82, 0.06);
  --radius: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--pearl); color: var(--navy); font-family: Arial, Helvetica, sans-serif; line-height: 1.55; }
body, button, input, select { font: inherit; }
h1, h2, h3, p, blockquote, dl, dd { margin-top: 0; }
h1, h2, h3 { color: var(--navy); font-family: Georgia, "Times New Roman", serif; line-height: 1.04; letter-spacing: -0.035em; }
h1 { font-size: clamp(3rem, 5.2vw, 6rem); }
h2 { font-size: clamp(2rem, 3.2vw, 3.7rem); }
h3 { font-size: 1.45rem; }
p { color: var(--muted); }
a { color: var(--cobalt); text-decoration: none; }
button, summary, select { cursor: pointer; }
img { display: block; max-width: 100%; }
:focus-visible { outline: 3px solid rgba(7, 87, 247, 0.35); outline-offset: 3px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.eyebrow { display: inline-block; color: var(--cobalt); font-size: .74rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.signal-eyebrow { color: #965e04; }
.section-shell { width: min(1500px, calc(100% - 64px)); margin-inline: auto; }
.panel { border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255, 255, 255, .94); box-shadow: var(--shadow-soft); }
.icon { width: 48px; height: 48px; flex: 0 0 auto; object-fit: contain; }
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 9px; border: 1px solid var(--cobalt); border-radius: 9px; background: linear-gradient(135deg, var(--cobalt), #0345dc); color: #fff; padding: 0 24px; font-weight: 800; box-shadow: 0 10px 24px rgba(7, 87, 247, .2); transition: transform .2s ease, box-shadow .2s ease; }
.button:hover { transform: translateY(-1px); box-shadow: 0 14px 28px rgba(7, 87, 247, .25); }
.button-small { min-height: 42px; padding-inline: 20px; }
.button-wide { width: 100%; }
.button-outline { background: rgba(255, 255, 255, .86); color: var(--cobalt); box-shadow: none; }
.button-quiet { border: 0; background: transparent; color: var(--cobalt); font-weight: 800; padding: 10px 16px; }
.text-link { color: var(--navy); font-weight: 700; }
.play-link { display: inline-flex; align-items: center; gap: 11px; color: var(--cobalt); font-weight: 800; }
.play-link > span { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid #8eb2ff; border-radius: 50%; font-size: .75rem; }

/* Brand and navigation */
.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--navy); font-size: 1.08rem; font-weight: 900; letter-spacing: -.025em; }
.brand-mark { position: relative; width: 36px; height: 34px; flex: 0 0 auto; }
.brand-mark::before, .brand-mark::after, .brand-mark i, .brand-mark b { content: ""; position: absolute; display: block; transform: skewX(-28deg); border-radius: 2px; }
.brand-mark::before { left: 5px; top: 2px; width: 10px; height: 31px; background: linear-gradient(180deg, #0878ff, #074ce8); }
.brand-mark::after { right: 5px; top: 2px; width: 10px; height: 31px; background: linear-gradient(180deg, #064bf3, #062fa7); }
.brand-mark i { left: 11px; top: 16px; width: 15px; height: 7px; background: #3b8cff; transform: skewX(0deg); }
.brand-mark b { left: 0; bottom: 1px; width: 16px; height: 7px; background: #8ec6ff; transform: skewX(-28deg); opacity: .75; }
.site-header { position: absolute; z-index: 20; top: 0; left: 0; display: grid; width: 100%; grid-template-columns: minmax(220px, 1fr) auto minmax(220px, 1fr); align-items: center; gap: 34px; padding: 26px clamp(32px, 5vw, 92px); }
.desktop-nav { display: flex; align-items: center; gap: clamp(22px, 2.6vw, 44px); }
.desktop-nav a { position: relative; color: var(--navy); font-size: .94rem; font-weight: 750; white-space: nowrap; }
.desktop-nav a::after { content: ""; position: absolute; right: 0; bottom: -11px; left: 0; height: 2px; background: var(--cobalt); transform: scaleX(0); transition: transform .2s; }
.desktop-nav a:hover::after, .desktop-nav a.active::after { transform: scaleX(1); }
.header-actions { position: static; display: flex; align-self: center; align-items: center; justify-content: flex-end; gap: 28px; margin: 0; transform: none; }
.header-actions .text-link, .header-actions .button { flex: 0 0 auto; white-space: nowrap; }
.mobile-menu { display: none; position: relative; margin-left: auto; }
.mobile-menu > summary { display: grid; width: 42px; height: 42px; place-content: center; gap: 5px; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.9); list-style: none; }
.mobile-menu > summary::-webkit-details-marker { display: none; }
.mobile-menu > summary span { width: 20px; height: 2px; background: var(--navy); }
.mobile-menu nav { position: absolute; top: 52px; right: 0; display: flex; width: 260px; flex-direction: column; gap: 4px; border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 14px; box-shadow: var(--shadow); }
.mobile-menu nav a:not(.button) { color: var(--navy); padding: 10px 12px; font-weight: 700; }

/* Public heroes */
.hero-with-header { position: relative; overflow: hidden; background-color: var(--pearl); background-repeat: no-repeat; background-position: center; background-size: cover; }
.home-hero { min-height: 720px; background-image: linear-gradient(90deg, rgba(251,250,246,.13) 0%, rgba(251,250,246,0) 60%), url('../sites-v34/home-bg.webp'); }
.hero-copy { width: min(680px, 48%); padding: 160px 0 70px clamp(48px, 6.2vw, 116px); }
.hero-copy h1 { max-width: 640px; margin: 8px 0 20px; font-size: clamp(4rem, 6.6vw, 7.2rem); }
.hero-copy h1 em, .public-hero-copy h1 em { color: var(--cobalt); font-style: normal; }
.hero-copy > p { max-width: 620px; color: var(--navy-2); font-size: 1.22rem; line-height: 1.45; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 28px; }
.hero-trust { display: flex; flex-direction: column; margin-top: 24px; font-size: .88rem; }
.hero-trust span { color: var(--muted); }
.home-hero blockquote { position: absolute; right: 5.6vw; bottom: 98px; width: 290px; color: #fff; font-family: Georgia, serif; font-size: 1.23rem; font-style: italic; line-height: 1.35; text-shadow: 0 2px 10px rgba(0,0,0,.35); }
.home-hero blockquote b { display: block; color: var(--gold-2); font-size: 3.5rem; line-height: .7; }
.home-hero blockquote cite { display: block; margin-top: 16px; font-family: Arial, sans-serif; font-size: .75rem; font-style: normal; font-weight: 800; }
.public-hero-copy { position: relative; z-index: 2; max-width: 720px; padding: 130px 0 80px clamp(48px, 6.2vw, 116px); }
.public-hero-copy h1 { margin: 6px 0 18px; }
.public-hero-copy > p { max-width: 640px; color: var(--navy-2); font-size: 1.18rem; }
.markets-hero { min-height: 470px; background-image: linear-gradient(90deg, rgba(251,250,246,.06), rgba(251,250,246,.02)), url('../sites-v34/markets-bg.webp'); }
.markets-hero .public-hero-copy { width: 52%; }
.market-pulse-card { position: absolute; z-index: 2; top: 150px; right: 8vw; display: grid; width: min(500px, 38vw); grid-template-columns: 1fr 180px; align-items: center; gap: 24px; border: 1px solid var(--line); border-radius: 20px; background: rgba(255,255,255,.9); padding: 24px 28px; box-shadow: var(--shadow); }
.market-pulse-card h2 { margin: 5px 0 7px; font-family: Arial, sans-serif; font-size: 1.55rem; letter-spacing: -.02em; }
.market-pulse-card p { margin: 0; font-size: .88rem; }
.gauge { position: relative; display: grid; height: 112px; place-items: center; align-content: center; overflow: hidden; border-radius: 112px 112px 14px 14px; background: conic-gradient(from 270deg at 50% 100%, var(--gold-2), #dfe7f5 31%, var(--cobalt) 50%, transparent 50%); }
.gauge::before { content: ""; position: absolute; width: 120px; height: 76px; border-radius: 100px 100px 10px 10px; background: #fff; }
.gauge span, .gauge small { position: relative; z-index: 1; }
.gauge span { font-size: 2rem; font-weight: 800; }
.gauge small { color: var(--muted); }
.themes-hero { min-height: 500px; background-image: url('../sites-v34/sectors-themes-bg.webp'); background-position: center right; }
.themes-hero .public-hero-copy { width: 52%; }
.research-hero { min-height: 520px; background-image: url('../sites-v34/research-bg.webp'); background-position: center; }
.research-hero .public-hero-copy { width: 55%; padding-top: 148px; }
.research-hero .public-hero-copy h1 { font-size: clamp(3.4rem, 5.7vw, 6.4rem); }
.how-hero { min-height: 920px; padding-bottom: 70px; background-image: url('../sites-v34/how-it-works-bg.webp'); background-position: center; }
.how-title { padding: 145px 24px 50px; text-align: center; }
.how-title h1 { margin: 7px 0 18px; }
.how-title p { font-size: 1.18rem; }
.pricing-hero { min-height: 530px; background-image: url('../sites-v34/pricing-bg.webp'); background-position: center; }
.pricing-hero .public-hero-copy { width: 59%; }
.pricing-hero .public-hero-copy h1 { font-size: clamp(3.4rem, 5.5vw, 6.1rem); }
.pricing-principles { display: flex; flex-wrap: wrap; gap: 26px; margin-top: 28px; color: var(--navy-2); font-size: .9rem; font-weight: 700; }
.methodology-hero, .proof-hero { min-height: 500px; background-image: linear-gradient(90deg, rgba(255,255,255,.05), rgba(255,255,255,.1)), url('../sites-v34/product-shell-bg.webp'); }

/* Shared sections */
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 34px; }
.section-heading h2 { margin: 7px 0 8px; }
.section-heading p { max-width: 740px; margin-bottom: 0; font-size: 1.05rem; }
.compact-heading h2 { font-size: clamp(1.8rem, 2.6vw, 3rem); }
.centered { justify-content: center; text-align: center; }
.centered > div { max-width: 850px; }
.panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.panel-heading h2, .panel-heading h3 { margin: 5px 0 0; }
.data-state { display: flex; align-items: flex-start; gap: 11px; border: 1px dashed #d4ddeb; border-radius: 10px; background: #f8fafc; padding: 12px; }
.data-state > div { display: flex; flex-direction: column; }
.data-state strong { font-size: .8rem; }
.data-state small { color: var(--muted); font-size: .7rem; }
.data-state-compact { margin-left: auto; border: 0; background: transparent; padding: 0; }
.status-dot { width: 9px; height: 9px; flex: 0 0 auto; margin-top: 5px; border-radius: 50%; background: var(--gold-2); box-shadow: 0 0 0 5px var(--gold-soft); }
.state { display: inline-flex; width: fit-content; border-radius: 999px; padding: 5px 9px; font-size: .68rem; font-style: normal; font-weight: 800; white-space: nowrap; }
.state-gold { background: var(--gold-soft); color: #9b6104; }
.state-blue { background: var(--blue-soft); color: var(--cobalt-dark); }
.data-note { border-left: 3px solid var(--gold-2); background: var(--gold-soft); padding: 16px 18px; }
.data-note p { margin: 4px 0 0; font-size: .88rem; }
.micro-copy { font-size: .72rem; }

/* Home */
.home-snapshot { position: relative; z-index: 4; margin-top: -42px; border: 1px solid var(--line); border-radius: 20px; background: rgba(255,255,255,.96); padding: 24px; box-shadow: var(--shadow); }
.market-card-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.market-card { display: grid; min-width: 0; grid-template-columns: 48px minmax(80px,1fr); align-items: center; gap: 11px; border: 1px solid var(--line-soft); border-radius: 14px; background: #fff; padding: 14px; }
.market-card > div:not(.data-state) { display: flex; min-width: 0; flex-direction: column; }
.market-card strong { font-size: .9rem; }
.market-card small { overflow: hidden; color: var(--muted); font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.market-card .data-state { grid-column: 1 / -1; margin: 4px 0 0; }
.home-two-column { display: grid; grid-template-columns: 1.6fr 1fr; gap: 14px; margin-top: 14px; }
.leading-themes, .activity-state { padding: 20px; }
.leading-themes h3, .activity-state h3 { font-family: Arial, sans-serif; font-size: 1rem; letter-spacing: -.015em; }
.theme-chips { display: grid; grid-template-columns: repeat(5,1fr); gap: 9px; margin-top: 16px; }
.theme-chips a { display: flex; min-width: 0; flex-direction: column; align-items: center; gap: 7px; border-right: 1px solid var(--line-soft); color: var(--navy); text-align: center; }
.theme-chips a:last-child { border-right: 0; }
.theme-chips .icon { width: 38px; height: 38px; }
.theme-chips span { font-size: .72rem; font-weight: 700; }
.activity-state p { margin-bottom: 8px; font-size: .82rem; }
.activity-state a { font-size: .8rem; font-weight: 800; }
.opportunity-teaser { padding-block: 90px 42px; }
.teaser-grid { display: grid; grid-template-columns: 1.15fr repeat(3, 1fr); gap: 16px; }
.teaser-grid > article { min-height: 260px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; padding: 24px; box-shadow: var(--shadow-soft); }
.teaser-intro { display: flex; flex-direction: column; align-items: flex-start; }
.teaser-intro h3 { margin: 20px 0 9px; }
.teaser-intro a { margin-top: auto; font-weight: 800; }
.update-pill { border-radius: 999px; background: var(--gold-soft); color: #9c650a; padding: 5px 9px; font-size: .66rem; font-weight: 800; }
.locked-opportunity { position: relative; overflow: hidden; }
.lock-badge { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 50%; background: var(--gold-soft); color: var(--gold); font-size: 1.2rem; box-shadow: 0 8px 20px rgba(200,134,19,.12); }
.blur-line { width: 72%; height: 19px; margin: 26px 0 14px; border-radius: 99px; background: linear-gradient(90deg,#cdd5e3,#eef1f6,#cbd4e2); filter: blur(5px); }
.locked-opportunity > strong { font-size: .86rem; }
.locked-opportunity dl { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 20px 0; }
.locked-opportunity dl div { display: flex; flex-direction: column; border-right: 1px solid var(--line-soft); }
.locked-opportunity dt { color: var(--muted); font-size: .68rem; }
.locked-opportunity dd { font-size: .78rem; font-weight: 800; }
.locked-opportunity a { position: absolute; bottom: 22px; font-size: .78rem; font-weight: 800; }
.intelligence-lock { display: grid; grid-template-columns: 1.25fr 3fr; gap: 28px; border: 1px solid #f0d29d; border-radius: 20px; background: linear-gradient(135deg,#fffefa,#fff9ee); padding: 34px; box-shadow: 0 18px 42px rgba(200,134,19,.08); }
.lock-intro h2 { margin: 8px 0 12px; font-size: clamp(2rem,2.8vw,3.3rem); }
.module-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; }
.module-grid article { position: relative; display: flex; min-height: 205px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #efd9b0; border-radius: 14px; background: rgba(255,255,255,.75); padding: 18px; text-align: center; }
.module-grid .icon { width: 42px; height: 42px; margin-bottom: 13px; }
.module-grid strong { font-size: .82rem; }
.module-grid p { margin: 6px 0 0; font-size: .7rem; }
.mini-lock { position: absolute; top: 10px; right: 10px; color: var(--gold); }
.how-preview { padding-block: 100px; }
.steps-row { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.steps-row article { position: relative; min-height: 230px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; padding: 28px; box-shadow: var(--shadow-soft); }
.steps-row article > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-weight: 900; }
.steps-row h3 { margin: 34px 0 10px; }
.steps-row p { font-size: .9rem; }
.center-action { display: flex; justify-content: center; margin-top: 34px; }
.proof-preview { display: grid; grid-template-columns: 1.15fr 1fr; gap: 50px; align-items: center; border-radius: 24px; background: linear-gradient(135deg,#071331,#102b5d); padding: 58px; }
.proof-preview h2, .proof-preview p, .proof-preview strong { color: #fff; }
.proof-preview .eyebrow { color: var(--gold-2); }
.proof-preview p { color: #cbd6eb; }
.proof-preview a { color: #92b5ff; font-weight: 800; }
.proof-ready-card { border: 1px solid rgba(255,255,255,.18); border-radius: 19px; background: linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055)); padding: 24px; box-shadow: inset 0 1px 0 rgba(255,255,255,.08); }
.proof-ready-head { display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 13px; padding-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.14); }
.proof-ready-icon { display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid rgba(255,255,255,.26); border-radius: 50%; background: rgba(255,255,255,.08); color: var(--gold-2); font-weight: 900; }
.proof-ready-head > div { display: flex; min-width: 0; flex-direction: column; }
.proof-ready-head small { color: #9eb6de; font-size: .58rem; font-weight: 900; letter-spacing: .11em; }
.proof-ready-head strong { font-size: .92rem; }
.proof-ready-card ol { display: grid; gap: 0; margin: 0; padding: 8px 0 0; list-style: none; }
.proof-ready-card li { display: grid; grid-template-columns: 34px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.proof-ready-card li > b { color: var(--gold-2); font-size: .64rem; }
.proof-ready-card li > span { display: flex; flex-direction: column; }
.proof-ready-card li small { color: #b7c7e2; font-size: .68rem; }
.proof-ready-note { margin: 15px 0 0 !important; color: #cbd6eb !important; font-size: .72rem; }
.research-preview { padding-block: 100px; }
.research-card-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.research-card { display: flex; min-height: 390px; flex-direction: column; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; color: var(--navy); box-shadow: var(--shadow-soft); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.research-card:hover { transform: translateY(-4px); border-color: #bdcceb; box-shadow: 0 18px 38px rgba(22,42,82,.12); }
.research-card.featured { background: linear-gradient(145deg,#071331,#143d83); }
.research-card.featured h3, .research-card.featured p, .research-card.featured small { color: #fff; }
.research-card-visual { position: relative; display: flex; min-height: 132px; align-items: flex-start; justify-content: space-between; overflow: hidden; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 78% 25%,rgba(7,87,247,.25),transparent 28%),linear-gradient(135deg,#f5f8ff,#e9f0fc); padding: 19px; }
.research-card-visual::after { content: ""; position: absolute; inset: 0; opacity: .45; background-image: radial-gradient(#7da2e7 1px,transparent 1px); background-size: 13px 13px; mask-image: linear-gradient(90deg,transparent,#000 40%,#000); }
.research-card-visual > span { position: relative; z-index: 1; color: var(--cobalt); font-family: Georgia,serif; font-size: 1.65rem; }
.research-card-visual > div { position: relative; z-index: 1; display: flex; align-items: center; gap: 8px; margin-top: 52px; }
.research-card-visual b { border: 1px solid #b9cae8; border-radius: 999px; background: rgba(255,255,255,.86); padding: 6px 8px; color: #365278; font-size: .52rem; letter-spacing: .08em; }
.research-card-visual i { width: 24px; height: 1px; background: var(--cobalt); }
.research-card.featured .research-card-visual { border-color: rgba(255,255,255,.14); background: radial-gradient(circle at 78% 25%,rgba(61,137,255,.43),transparent 28%),linear-gradient(135deg,#0c2757,#071331); }
.research-card.featured .research-card-visual::after { background-image: radial-gradient(#7fa7ee 1px,transparent 1px); }
.research-card.featured .research-card-visual > span { color: var(--gold-2); }
.research-card.featured .research-card-visual b { border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.08); color: #dce8fb; }
.research-card-copy { display: flex; min-height: 0; flex: 1; flex-direction: column; padding: 23px 25px 25px; }
.research-card-copy > span { color: var(--cobalt); font-size: .64rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.research-card.featured .research-card-copy > span { color: var(--gold-2); }
.research-card h3 { margin: 15px 0 12px; }
.research-card p { font-size: .9rem; }
.research-card small { margin-top: auto; color: var(--muted); }
.home-pricing-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; margin-bottom: 80px; border: 1px solid var(--line); border-radius: 20px; background: url('../sites-v34/pricing-bg.webp') center/cover; padding: 50px; }
.home-pricing-cta h2 { margin: 6px 0 9px; font-size: clamp(2rem,3vw,3.5rem); }
.home-pricing-cta > div:last-child { display: flex; flex-direction: column; gap: 12px; }
.trust-strip { display: grid; width: min(1500px,calc(100% - 64px)); grid-template-columns: repeat(3,1fr); gap: 0; margin: 0 auto 54px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow-soft); }
.trust-strip > div { display: grid; grid-template-columns: 44px 1fr; gap: 1px 14px; padding: 22px 30px; border-right: 1px solid var(--line); }
.trust-strip > div:last-child { border-right: 0; }
.trust-strip span { grid-row: 1 / span 2; display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid #adc3ef; border-radius: 50%; color: var(--cobalt); }
.trust-strip strong { font-size: .88rem; }
.trust-strip small { color: var(--muted); }
.site-footer { display: grid; grid-template-columns: 2fr repeat(3,1fr); gap: 70px; border-top: 1px solid var(--line); background: #fff; padding: 58px clamp(32px,6vw,110px); }
.site-footer > div { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.site-footer p { max-width: 400px; font-size: .88rem; }
.site-footer a, .site-footer span { color: var(--muted); font-size: .82rem; }
.site-footer strong { margin-bottom: 8px; }

/* Markets and themes */
.market-overview-page, .themes-page-content { padding-block: 36px 100px; }
.market-card-grid-large { gap: 16px; }
.market-card-large { min-height: 150px; padding: 20px; }
.market-card-large .icon { width: 54px; height: 54px; }
.market-overview-page > .data-note { margin-top: 18px; }
.market-dashboard-grid { display: grid; grid-template-columns: 1.2fr .9fr .9fr; gap: 18px; margin-top: 24px; }
.market-dashboard-grid > article, .market-bottom-grid > article { padding: 24px; }
.market-dashboard-grid h2, .market-bottom-grid h2 { font-family: Arial,sans-serif; font-size: 1.15rem; letter-spacing: -.02em; }
.map-placeholder { position: relative; display: grid; min-height: 320px; grid-template-columns: repeat(3,1fr); place-items: center; overflow: hidden; border-radius: 14px; background: radial-gradient(circle at 30% 50%,#a9c7ff 0 10%,transparent 11%), radial-gradient(circle at 54% 42%,#7aa7ff 0 8%,transparent 9%), radial-gradient(circle at 76% 57%,#f7b191 0 9%,transparent 10%), linear-gradient(135deg,#eff5ff,#fff6f0); }
.map-placeholder::before { content: ""; position: absolute; inset: 25px; opacity: .45; background-image: radial-gradient(#416eca 1px,transparent 1px); background-size: 13px 13px; mask-image: radial-gradient(ellipse,#000 30%,transparent 70%); }
.map-placeholder span { position: relative; z-index: 1; font-size: .72rem; font-weight: 800; }
.map-placeholder strong { position: absolute; right: 20px; bottom: 18px; left: 20px; z-index: 1; border-radius: 8px; background: rgba(255,255,255,.84); padding: 10px; color: var(--navy-2); font-size: .74rem; text-align: center; }
.flow-row { display: grid; grid-template-columns: 1fr 1.3fr 44px; align-items: center; gap: 10px; margin: 15px 0; font-size: .78rem; }
.flow-row i { height: 8px; border-radius: 99px; background: #e4eaf4; }
.flow-row small { color: var(--muted); text-align: right; }
.strength-row { display: grid; grid-template-columns: 1.1fr .75fr 1fr; align-items: center; gap: 10px; border-bottom: 1px solid var(--line-soft); padding: 13px 0; font-size: .76rem; }
.strength-row strong { color: var(--muted); font-size: .7rem; }
.strength-row i, .confidence-components i { display: block; height: 7px; overflow: hidden; border-radius: 99px; background: #e8ecf3; }
.strength-row i b, .confidence-components i b { display: block; width: 18%; height: 100%; background: #bbc6d8; }
.market-bottom-grid { display: grid; grid-template-columns: 1.8fr .8fr; gap: 18px; margin-top: 18px; }
.provider-table > div { display: grid; grid-template-columns: 1.25fr .8fr .65fr .6fr; align-items: center; gap: 15px; border-bottom: 1px solid var(--line-soft); padding: 11px 0; font-size: .76rem; }
.provider-table > div:first-child { color: var(--muted); font-size: .68rem; }
.provider-table span:first-child { display: flex; align-items: center; gap: 10px; font-weight: 800; }
.provider-table .icon { width: 32px; height: 32px; }
.market-news-panel { display: flex; flex-direction: column; align-items: flex-start; }
.market-news-panel a { margin-top: 8px; font-weight: 800; }
.theme-metrics { grid-template-columns: repeat(4,1fr); }
.theme-dashboard-grid { display: grid; grid-template-columns: 1.45fr 1fr; gap: 18px; margin-top: 18px; }
.relationship-panel, .ranked-theme-panel { padding: 24px; }
.relationship-canvas { position: relative; min-height: 480px; overflow: hidden; border-radius: 14px; background: url('../sites-v34/sectors-themes-bg.webp') center/cover; }
.node { position: absolute; z-index: 2; display: flex; width: 155px; flex-direction: column; align-items: center; gap: 7px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.93); padding: 16px; text-align: center; box-shadow: var(--shadow-soft); }
.node .icon { width: 54px; height: 54px; }
.node strong { font-size: .74rem; }
.node-ai { top: 28px; left: 42px; }.node-energy { top: 70px; right: 50px; }.node-semi { bottom: 46px; left: 28%; }.node-hard { right: 28px; bottom: 36px; }
.connection { position: absolute; z-index: 1; width: 45%; height: 2px; background: linear-gradient(90deg,var(--cobalt),var(--gold)); transform-origin: left center; opacity: .45; }
.c1 { top: 145px; left: 150px; transform: rotate(8deg); }.c2 { top: 180px; left: 120px; transform: rotate(52deg); }.c3 { right: 120px; bottom: 140px; transform: rotate(-38deg); }
.map-disclaimer { position: absolute; right: 15px; bottom: 10px; left: 15px; z-index: 3; border-radius: 8px; background: rgba(255,255,255,.86); padding: 9px; color: var(--muted); font-size: .68rem; text-align: center; }
.theme-rank-row { display: grid; grid-template-columns: 25px 42px 1fr auto; align-items: center; gap: 11px; border-bottom: 1px solid var(--line-soft); padding: 13px 0; }
.theme-rank-row .icon { width: 40px; height: 40px; }
.theme-rank-row > span { color: var(--muted); font-size: .72rem; }
.theme-rank-row > div { display: flex; flex-direction: column; }
.theme-rank-row strong { font-size: .78rem; }
.theme-rank-row small { color: var(--muted); font-size: .66rem; }
.theme-insight-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-top: 18px; }
.theme-insight-grid > article { min-height: 265px; padding: 24px; }
.theme-insight-grid h3 { margin: 20px 0 10px; }
.theme-insight-grid p { font-size: .82rem; }
.gold-panel { border-color: #ecc87f; background: linear-gradient(145deg,#fffefa,#fff7e8); }
.gold-panel .button { margin-top: 10px; }

/* Research, how and pricing public pages */
.research-page-content { padding-block: 46px 100px; }
.featured-research { display: grid; grid-template-columns: 1fr 1.1fr; overflow: hidden; }
.featured-research > div:last-child { padding: 42px; }
.featured-research h2 { margin: 14px 0 18px; font-size: clamp(2.2rem,3.1vw,3.6rem); }
.featured-research small { display: block; margin-top: 28px; color: var(--muted); }
.featured-visual { position: relative; display: flex; min-height: 450px; align-items: flex-start; justify-content: flex-start; overflow: hidden; background: radial-gradient(circle at 50% 50%,#c99b41 0 3%,#0e2349 4% 32%,#071331 33% 100%); padding: 24px; }
.featured-visual > span { position: relative; z-index: 2; border: 1px solid rgba(255,255,255,.4); border-radius: 99px; color: #fff; padding: 7px 10px; font-size: .65rem; font-weight: 800; letter-spacing: .1em; }
.lens-graphic { position: absolute; inset: 20% 18%; border: 16px solid rgba(239,185,78,.8); border-radius: 50%; box-shadow: inset 0 0 80px rgba(116,170,255,.45),0 0 50px rgba(239,185,78,.25); }
.lens-graphic::after { content: ""; position: absolute; right: -100px; bottom: -65px; width: 140px; height: 22px; border-radius: 20px; background: #d2a346; transform: rotate(45deg); }
.lens-graphic i { position: absolute; inset: 20%; border: 1px dotted #82aaf2; border-radius: 50%; }
.research-layout { display: grid; grid-template-columns: 1fr 310px; gap: 22px; margin-top: 36px; }
.research-card-grid-page { grid-template-columns: repeat(3,1fr); }
.research-card-grid-page .research-card { min-height: 310px; }
.research-topic-list, .editorial-note { padding: 22px; }
.research-topic-list { position: sticky; top: 20px; }
.research-topic-list a { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--line-soft); color: var(--navy); padding: 14px 0; font-size: .78rem; }
.research-topic-list b { color: var(--muted); }
.editorial-note { margin-top: 18px; }
.editorial-note h3 { margin: 18px 0 9px; }
.editorial-note p { font-size: .82rem; }
.how-step-grid { display: grid; width: min(1380px,calc(100% - 80px)); grid-template-columns: repeat(4,1fr); gap: 26px; margin: auto; }
.how-step-grid article { position: relative; display: flex; min-height: 390px; flex-direction: column; align-items: center; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.88); padding: 30px 24px 24px; text-align: center; box-shadow: var(--shadow-soft); }
.step-number { align-self: flex-start; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-weight: 900; }
.how-step-grid .icon { width: 90px; height: 90px; margin: 30px 0 20px; }
.how-step-grid h2 { margin: 0 0 14px; font-size: 1.75rem; }
.how-step-grid p { font-size: .86rem; }
.how-step-grid small { margin-top: auto; border-radius: 99px; background: var(--blue-soft); color: var(--cobalt); padding: 5px 10px; font-size: .62rem; font-weight: 900; text-transform: uppercase; }
.step-arrow { position: absolute; z-index: 3; top: 50%; right: -39px; color: #9aa8bf; font-size: 1.4rem; }
.how-actions { display: flex; justify-content: center; gap: 30px; margin: 38px 0; }
.how-hero .trust-strip { margin-bottom: 0; }
.pedagogy-section { display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center; padding-block: 100px; }
.pedagogy-section ol { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0; padding: 0; list-style: none; }
.pedagogy-section li { display: flex; min-height: 130px; flex-direction: column; justify-content: center; border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 22px; }
.pedagogy-section li span { color: var(--muted); font-size: .84rem; }
.method-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; margin-bottom: 90px; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(135deg,#fff,#f1f6ff); padding: 50px; }
.method-cta > div { max-width: 900px; }
.method-cta h2 { margin: 7px 0 12px; }
.pricing-content { margin-top: -110px; padding-bottom: 100px; }
.pricing-grid { position: relative; z-index: 4; display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.plan-card { position: relative; min-height: 600px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.97); padding: 42px; box-shadow: var(--shadow); }
.plan-card.popular { border-color: var(--gold-2); background: linear-gradient(145deg,#fff,#fff9ef); transform: translateY(-18px); }
.popular-label { position: absolute; top: 18px; left: 50%; border: 1px solid #e6b451; border-radius: 99px; color: #a46900; padding: 5px 12px; font-size: .7rem; font-weight: 900; transform: translateX(-50%); }
.plan-card h2 { margin: 0 0 8px; font-size: 2.2rem; }
.plan-card.popular h2 { margin-top: 26px; }
.plan-card > p { min-height: 45px; }
.price { display: flex; align-items: baseline; gap: 7px; margin: 18px 0 24px; }
.price strong { font-family: Georgia,serif; font-size: 3.6rem; letter-spacing: -.06em; }
.price span { color: var(--navy-2); }
.plan-card ul { display: flex; flex-direction: column; gap: 13px; margin: 28px 0 0; padding: 0; list-style: none; }
.plan-card li { display: flex; gap: 10px; color: var(--cobalt); font-weight: 900; }
.plan-card li span { color: var(--navy-2); font-size: .87rem; font-weight: 500; }
.checkout-disclosure { margin-top: 30px; border-left: 3px solid var(--gold-2); background: #fffaf0; padding: 20px 24px; }
.checkout-disclosure p { margin: 6px 0 0; }

/* Methodology and Proof Ledger */
.methodology-content, .proof-page-content { padding-block: 70px 100px; }
.method-intro-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 20px; margin-bottom: 90px; }
.method-intro-grid article { min-height: 270px; padding: 32px; }
.inference-chain { margin-top: 30px; color: var(--navy); font-size: 1.12rem; font-weight: 800; line-height: 1.8; }
.glossary-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.glossary-card { min-height: 280px; padding: 28px; scroll-margin-top: 20px; }
.glossary-card > span { color: var(--gold); font-weight: 900; }
.glossary-card h3 { margin: 30px 0 12px; }
.glossary-card a { display: inline-block; margin-top: 10px; font-size: .76rem; font-weight: 800; }
.method-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: start; border-top: 1px solid var(--line); padding-block: 90px; }
.method-section h2 { margin: 8px 0 14px; }
.evidence-types { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.evidence-types article { min-height: 220px; border: 1px solid var(--line); border-radius: 15px; background: #fff; padding: 22px; }
.evidence-types h3 { margin: 25px 0 10px; font-size: 1.15rem; }
.evidence-types p { font-size: .82rem; }
.fact-label, .model-label, .editorial-label { border-radius: 99px; padding: 5px 8px; font-size: .62rem; font-weight: 900; }
.fact-label { background: #e8f7f0; color: var(--green); }.model-label { background: var(--blue-soft); color: var(--cobalt); }.editorial-label { background: var(--gold-soft); color: #a36700; }
.confidence-components { display: flex; flex-direction: column; gap: 15px; border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 26px; }
.confidence-components > div { display: grid; grid-template-columns: 1fr 1.6fr 80px; align-items: center; gap: 15px; }
.confidence-components small { color: var(--muted); text-align: right; }
.architecture-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.architecture-flow span { border: 1px solid var(--line); border-radius: 10px; background: #fff; padding: 14px; font-size: .78rem; font-weight: 800; }
.architecture-flow b { color: var(--gold); }
.validation-section ol { margin: 0; padding: 0; list-style: none; }
.validation-section li { display: grid; grid-template-columns: 1fr 1.5fr; gap: 20px; border-bottom: 1px solid var(--line); padding: 16px 0; }
.validation-section span { color: var(--muted); }
.ledger-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.ledger-summary-grid article { display: flex; min-height: 160px; flex-direction: column; padding: 24px; }
.ledger-summary-grid > article > span { color: var(--muted); font-size: .76rem; }
.ledger-summary-grid strong { margin: 18px 0 4px; font-family: Georgia,serif; font-size: 1.8rem; }
.ledger-summary-grid small { color: var(--muted); }
.ledger-status-card { border-color: #bdd8ca; background: linear-gradient(145deg,#fff,#eef9f3); }
.ledger-status-card strong { color: var(--green); }
.ledger-table-panel { margin-top: 26px; padding: 28px; }
.ledger-record-head { display: grid; grid-template-columns: .7fr 1.5fr .6fr 1fr .7fr; gap: 20px; border-bottom: 1px solid var(--line); padding: 15px 0; color: var(--muted); font-size: .7rem; }
.ledger-empty.large { min-height: 320px; margin-top: 18px; border: 1px dashed var(--line); background: #f9fbfe; }
.ledger-empty.large strong { color: var(--navy); }
.ledger-empty.large p { max-width: 700px; color: var(--muted); }
.ledger-readiness { margin-top: 18px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: linear-gradient(145deg,#fbfdff,#f5f8fd); }
.ledger-readiness-intro { display: flex; align-items: center; gap: 15px; padding: 23px 24px; border-bottom: 1px solid var(--line); background: #fff; }
.ledger-readiness-intro .proof-ready-icon { border-color: #bdd8ca; background: #eef9f3; color: var(--green); }
.ledger-readiness-intro > div { display: flex; flex-direction: column; }
.ledger-readiness-intro p { margin: 3px 0 0; font-size: .75rem; }
.ledger-readiness-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.ledger-readiness-grid article { display: flex; min-height: 180px; flex-direction: column; border-right: 1px solid var(--line); padding: 22px; }
.ledger-readiness-grid article:last-child { border-right: 0; }
.ledger-readiness-grid article > b { color: var(--gold); font-size: .65rem; }
.ledger-readiness-grid article > span { display: flex; flex-direction: column; gap: 7px; margin: 26px 0 18px; }
.ledger-readiness-grid article small { color: var(--muted); font-size: .7rem; }
.ledger-readiness-grid article em { margin-top: auto; color: var(--cobalt); font-size: .56rem; font-style: normal; font-weight: 900; letter-spacing: .1em; }
.ledger-readiness-note { margin: 0; border-top: 1px solid var(--line); background: var(--gold-soft); padding: 14px 22px; color: #6b5a3c; font-size: .7rem; }
.proof-principles { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-top: 26px; }
.proof-principles article { border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 28px; }
.proof-principles > article > span { color: var(--gold); font-weight: 900; }
.proof-principles h2 { margin: 30px 0 10px; font-size: 1.45rem; }
.proof-principles p { font-size: .82rem; }

/* Access flows */
.access-page { position: relative; display: grid; min-height: 100vh; grid-template-columns: 1.05fr .95fr; background: url('../sites-v34/pricing-bg.webp') center/cover; }
.access-brand { position: absolute; top: 28px; left: 5vw; }
.access-card { align-self: center; width: min(520px,calc(100% - 60px)); justify-self: center; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.97); padding: 40px; box-shadow: var(--shadow); }
.access-card h1 { margin: 8px 0 14px; font-size: clamp(2.5rem,4vw,4.3rem); }
.access-page > aside { display: flex; flex-direction: column; justify-content: center; background: linear-gradient(145deg,rgba(7,19,49,.93),rgba(15,52,112,.88)), url('../sites-v34/opportunity-bg.webp') center/cover; padding: 10vw; }
.access-page > aside h2 { margin: 12px 0 18px; color: #fff; font-size: clamp(2.4rem,4vw,4.7rem); }
.access-page > aside p { color: #c9d5ec; font-size: 1.04rem; }
.access-form { display: flex; flex-direction: column; gap: 17px; margin-top: 28px; }
.access-form label { display: flex; flex-direction: column; gap: 7px; color: var(--navy-2); font-size: .78rem; font-weight: 800; }
.access-form input, .search-page-tool input, .filter-bar input, .filter-bar select, .add-control select { width: 100%; min-height: 48px; border: 1px solid #cfd8e6; border-radius: 9px; background: #fff; color: var(--navy); padding: 0 13px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.form-note { color: var(--muted); line-height: 1.45; }
.form-message { border-left: 3px solid var(--gold-2); background: var(--gold-soft); padding: 13px; color: #7b510a; font-size: .8rem; }
.selected-plan { display: grid; grid-template-columns: 1fr auto; border: 1px solid #efd39f; border-radius: 12px; background: var(--gold-soft); padding: 15px; }
.selected-plan span { grid-column: 1 / -1; color: var(--muted); font-size: .68rem; }
.selected-plan a { grid-row: 2; grid-column: 2; }
.access-footer { margin-top: 20px; color: var(--muted); font-size: .82rem; text-align: center; }

/* Product shell */
.product-shell { min-height: 100vh; background: var(--pearl) url('../sites-v34/product-shell-bg.webp') center top/cover fixed; }
.product-sidebar { position: fixed; z-index: 30; top: 0; bottom: 0; left: 0; display: flex; width: 244px; flex-direction: column; border-right: 1px solid var(--line); background: rgba(255,255,255,.96); padding: 26px 16px 18px; }
.product-sidebar .brand { margin: 0 10px 30px; font-size: .98rem; }
.product-sidebar nav { display: flex; flex-direction: column; gap: 4px; }
.product-sidebar nav a { display: flex; min-height: 44px; align-items: center; gap: 13px; border-radius: 10px; color: var(--navy-2); padding: 8px 12px; font-size: .76rem; font-weight: 700; }
.product-sidebar nav a > span { display: grid; width: 24px; place-items: center; color: #53678e; font-size: 1.1rem; }
.product-sidebar nav a.active { background: var(--blue-soft); color: var(--cobalt); }
.product-sidebar nav a.active > span { color: var(--cobalt); }
.sidebar-upgrade { margin-top: auto; border: 1px solid #efd9ad; border-radius: 14px; background: linear-gradient(145deg,#fff,#fff9ef); padding: 16px; }
.sidebar-upgrade > strong { display: block; margin: 10px 0 7px; font-family: Georgia,serif; line-height: 1.2; }
.sidebar-upgrade p, .sidebar-upgrade a { margin: 0; font-size: .7rem; }
.sidebar-upgrade a { display: inline-block; margin-top: 9px; font-weight: 800; }
.sidebar-account { display: flex; align-items: center; gap: 10px; border-top: 1px solid var(--line); margin-top: 15px; padding: 15px 7px 0; }
.avatar { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: var(--cobalt); color: #fff; font-weight: 900; }
.sidebar-account > div { display: flex; flex-direction: column; font-size: .7rem; }
.sidebar-account small { color: var(--muted); }
.product-main { min-height: 100vh; margin-left: 244px; }
.product-topbar { display: flex; height: 74px; align-items: center; justify-content: flex-end; gap: 26px; border-bottom: 1px solid rgba(221,228,239,.8); background: rgba(255,255,255,.72); padding: 0 34px; backdrop-filter: blur(10px); }
.product-search-link { display: flex; width: min(420px,40vw); min-height: 42px; align-items: center; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.8); color: #8792a8; padding: 0 14px; font-size: .75rem; }
.product-drawer { display: none; margin-right: auto; }
.product-drawer > summary { border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 8px 12px; list-style: none; font-weight: 800; }
.product-drawer nav { position: absolute; z-index: 50; top: 62px; left: 18px; display: flex; width: 260px; flex-direction: column; border: 1px solid var(--line); border-radius: 12px; background: #fff; padding: 12px; box-shadow: var(--shadow); }
.product-drawer nav a { color: var(--navy); padding: 9px; }
.product-page { width: min(1500px,calc(100% - 54px)); margin: 0 auto; padding: 28px 0 70px; }
.product-hero { position: relative; display: flex; min-height: 235px; align-items: center; justify-content: space-between; gap: 30px; overflow: hidden; border: 1px solid rgba(221,228,239,.8); border-radius: 20px; background: rgba(255,255,255,.78); padding: 36px; box-shadow: var(--shadow-soft); }
.product-hero > div:first-child { position: relative; z-index: 2; max-width: 850px; }
.product-hero h1 { margin: 7px 0 13px; font-size: clamp(3.2rem,5vw,6rem); }
.product-hero p { max-width: 760px; margin-bottom: 0; font-size: 1rem; }
.opportunity-product-hero { background: url('../sites-v34/opportunity-bg.webp') center/cover; }
.hero-data-state { position: relative; z-index: 2; width: 310px; border: 1px solid #efd9ad; border-radius: 14px; background: rgba(255,255,255,.9); padding: 18px; }
.hero-data-state > strong { display: block; margin-bottom: 10px; }
.hero-data-state > a { display: inline-block; margin-top: 12px; font-size: .76rem; font-weight: 800; }
.hero-stat { display: flex; min-width: 220px; flex-direction: column; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.9); padding: 20px; }
.hero-stat span, .hero-stat small { color: var(--muted); font-size: .72rem; }
.hero-stat strong { margin: 4px 0; font-family: Georgia,serif; font-size: 1.6rem; }
.metric-grid { display: grid; gap: 14px; margin-top: 16px; }
.four-metrics { grid-template-columns: repeat(4,1fr); }
.metric-card { display: flex; min-height: 120px; align-items: center; gap: 16px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.94); padding: 20px; box-shadow: var(--shadow-soft); }
.metric-card .icon { width: 50px; height: 50px; }
.metric-card > div { display: flex; flex-direction: column; min-width: 0; }
.metric-card span { color: var(--muted); font-size: .7rem; }
.metric-card strong { margin: 5px 0 3px; overflow: hidden; font-family: Georgia,serif; font-size: 1.28rem; text-overflow: ellipsis; white-space: nowrap; }
.metric-card small { color: var(--gold); font-size: .65rem; }
.workspace-split { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 18px; align-items: start; margin-top: 18px; }
.opportunity-table-wrap { min-width: 0; }
.filter-bar { display: grid; grid-template-columns: 1.3fr .75fr .7fr auto; gap: 10px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.93); padding: 12px; }
.filter-bar input, .filter-bar select { min-height: 43px; font-size: .74rem; }
.table-caption { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; padding: 25px 4px 14px; }
.table-caption h2 { margin: 5px 0 0; font-size: 1.5rem; }
.table-caption > span { color: var(--muted); font-size: .72rem; }
.opportunity-table { overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.96); box-shadow: var(--shadow-soft); }
.table-row { display: grid; grid-template-columns: minmax(310px,1.8fr) .65fr .7fr .65fr .75fr; align-items: center; gap: 14px; border-bottom: 1px solid var(--line-soft); padding: 14px 16px; font-size: .74rem; }
.table-row:last-child { border-bottom: 0; }
.table-head { min-height: 45px; color: var(--muted); font-size: .67rem; }
.candidate-name { display: grid; grid-template-columns: 42px 1fr; gap: 12px; align-items: start; }
.candidate-name > div { display: flex; min-width: 0; flex-direction: column; }
.candidate-name small { color: var(--muted); font-size: .66rem; }
.candidate-name p { margin: 5px 0 0; font-size: .67rem; line-height: 1.35; }
.muted-value { color: var(--muted); font-size: .7rem; }
.row-link { font-weight: 800; }
.row-save-button { width: fit-content; border: 0; background: transparent; padding: 0; color: var(--cobalt); cursor: pointer; font: inherit; font-weight: 800; text-align: left; }
.row-save-button:disabled { cursor: default; opacity: .72; }
.empty-row { display: flex; min-height: 160px; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: var(--muted); text-align: center; }
.empty-row button { border: 0; background: transparent; color: var(--cobalt); font-weight: 800; }
.unlock-panel { position: sticky; top: 16px; border: 1px solid #eed4a3; border-radius: 17px; background: linear-gradient(145deg,#fff,#fff9ee); padding: 28px; box-shadow: var(--shadow-soft); }
.unlock-panel h2 { margin: 14px 0 10px; font-size: 2rem; }
.unlock-panel p, .unlock-panel li { font-size: .78rem; }
.unlock-panel ul { display: flex; flex-direction: column; gap: 7px; padding-left: 19px; }
.unlock-panel .button { width: 100%; margin: 12px 0; }
.unlock-panel > small { display: block; color: var(--muted); font-size: .65rem; text-align: center; }
.cluster-section { margin-top: 44px; }
.cluster-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.cluster-grid article { display: grid; min-height: 190px; grid-template-columns: 48px 1fr; gap: 15px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.95); padding: 22px; }
.cluster-grid p { font-size: .76rem; }
.cluster-grid span { color: var(--gold); font-size: .68rem; font-weight: 800; }
.mobile-dock { display: none; }

/* Opportunity detail */
.detail-page { padding-top: 6px; }
.detail-hero { position: relative; display: flex; min-height: 315px; align-items: center; justify-content: space-between; gap: 30px; overflow: hidden; border-radius: 20px; background: url('../sites-v34/opportunity-bg.webp') center/cover; padding: 38px; }
.detail-hero > div:first-child { max-width: 760px; }
.back-link { display: block; margin-bottom: 20px; color: var(--navy-2); font-size: .74rem; font-weight: 800; }
.detail-title { display: flex; align-items: center; gap: 16px; }
.detail-title .icon { width: 60px; height: 60px; }
.detail-title h1 { margin: 8px 0 10px; font-size: clamp(3rem,4.8vw,5.7rem); }
.detail-hero p { max-width: 750px; }
.journey-mini { display: flex; min-width: 330px; flex-direction: column; align-items: flex-start; gap: 7px; color: #a46705; font-family: Georgia,serif; }
.journey-mini i { display: block; width: 170px; height: 30px; border-bottom: 2px solid var(--gold-2); border-radius: 50%; transform: skewX(-25deg); }
.detail-tabs { position: sticky; z-index: 12; top: 0; display: flex; overflow-x: auto; gap: 28px; border-bottom: 1px solid var(--line); background: rgba(251,250,246,.92); padding: 22px 6px 12px; backdrop-filter: blur(8px); }
.detail-tabs a { color: var(--navy-2); font-size: .74rem; font-weight: 800; white-space: nowrap; }
.detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; align-items: start; margin-top: 20px; }
.detail-main-column { display: flex; min-width: 0; flex-direction: column; gap: 18px; }
.detail-side-column { position: sticky; top: 60px; display: flex; flex-direction: column; gap: 18px; }
.narrative-card { scroll-margin-top: 70px; padding: 30px; }
.narrative-card h2 { margin: 9px 0 16px; font-size: 2.1rem; }
.narrative-card p { font-size: .88rem; }
.step-label { color: var(--cobalt); font-size: .67rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.red-label { color: var(--red); }
.evidence-placeholder { display: grid; grid-template-columns: 1.3fr repeat(4,1fr); gap: 10px; margin-top: 20px; }
.evidence-placeholder span, .evidence-placeholder strong { border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; padding: 12px; font-size: .72rem; }
.propagation-flow { display: grid; grid-template-columns: repeat(7,auto); align-items: center; justify-content: space-between; gap: 12px; }
.propagation-flow > div { display: flex; width: 140px; flex-direction: column; align-items: center; text-align: center; }
.propagation-flow > div > span { display: grid; width: 36px; height: 36px; place-items: center; margin-bottom: 10px; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-weight: 900; }
.propagation-flow small { color: var(--muted); font-size: .64rem; }
.propagation-flow b { color: #9fb2d6; }
.gap-horizon-empty { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: center; margin-top: 20px; border-radius: 14px; background: linear-gradient(135deg,#f3f7ff,#fff9ed); padding: 22px; }
.gap-horizon-empty i { grid-column: 1 / -1; height: 70px; border-radius: 50%; border-top: 2px dashed #b5c5df; }
.gap-horizon-empty strong { grid-column: 1 / -1; color: #9a640a; text-align: center; }
.risk-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; padding-left: 20px; color: var(--navy-2); font-size: .8rem; }
.sticky-summary, .source-card { padding: 24px; }
.sticky-summary h2 { margin: 14px 0 9px; font-size: 2rem; }
.sticky-summary > div { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line-soft); padding: 11px 0; font-size: .74rem; }
.sticky-summary .button { width: 100%; margin-top: 14px; }
.source-card h3 { margin: 18px 0 8px; }
.proof-shell { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 18px; padding: 30px; }
.proof-shell > div { max-width: 800px; }
.proof-shell h2 { margin: 8px 0 9px; }
.detail-page > .trust-strip { width: 100%; margin-top: 38px; }

/* Watchlist, alerts, account and search */
.watchlist-product-hero { background: url('../sites-v34/watchlist-alerts-bg.webp') center/cover; }
.watchlist-grid { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; margin-top: 18px; }
.watchlist-panel, .alert-preview, .alerts-panel { padding: 26px; }
.add-control { display: flex; gap: 8px; }
.add-control select { min-width: 220px; min-height: 42px; font-size: .72rem; }
.panel-intro { max-width: 850px; font-size: .8rem; }
.watchlist-table { margin-top: 18px; }
.watchlist-row { display: grid; grid-template-columns: 1fr 1.5fr .8fr 70px; align-items: center; gap: 14px; border-bottom: 1px solid var(--line-soft); padding: 14px 0; font-size: .75rem; }
.watchlist-row > span:first-child { display: flex; flex-direction: column; }
.watchlist-row small { color: var(--muted); }
.watchlist-row button { border: 0; background: transparent; color: var(--cobalt); font-size: .7rem; font-weight: 800; }
.watchlist-head { color: var(--muted); font-size: .66rem; }
.empty-watch { display: flex; min-height: 260px; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.empty-watch > span { font-size: 2.8rem; color: #9db4df; }
.empty-watch p { max-width: 470px; font-size: .8rem; }
.alert-preview { display: flex; flex-direction: column; }
.alert-preview h2 { margin: 13px 0 22px; }
.alert-item { display: grid; grid-template-columns: 36px 1fr; gap: 11px; border-bottom: 1px solid var(--line-soft); padding: 15px 0; }
.alert-item > span { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); }
.alert-item > div { display: flex; flex-direction: column; }
.alert-item strong { font-size: .75rem; }
.alert-item small { color: var(--muted); font-size: .66rem; }
.alert-preview .button { margin-top: auto; }
.alerts-panel { margin-top: 18px; }
.alert-settings { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 22px; }
.alert-settings > button { display: flex; min-height: 120px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 20px; text-align: left; }
.alert-settings > button > span { display: flex; flex-direction: column; gap: 5px; }
.alert-settings small { color: var(--muted); font-size: .72rem; }
.toggle { display: block; width: 46px; height: 25px; flex: 0 0 auto; border-radius: 99px; background: #dbe1eb; padding: 3px; }
.toggle b { display: block; width: 19px; height: 19px; border-radius: 50%; background: #fff; transition: transform .2s; }
.toggle.on { background: var(--cobalt); }.toggle.on b { transform: translateX(21px); }
.alert-settings > .data-note { grid-column: 1 / -1; }
.account-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 18px; }
.account-grid > section { min-height: 270px; padding: 28px; }
.account-grid h2 { margin: 22px 0 10px; }
.account-grid .button { margin-top: 15px; }
.account-notice { margin-top: 18px; border: 1px solid #b8d4c6; border-radius: 12px; background: #eff9f3; color: #123f2a; padding: 15px 18px; font-size: .76rem; font-weight: 750; }
.account-panel-wide { grid-column: 1 / -1; min-height: 0 !important; }
.account-panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 40px; }
.account-panel-heading > div { flex: 1; }
.account-panel-heading > p { max-width: 430px; margin: 3px 0 0; }
.account-settings-form { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(220px,.6fr); gap: 20px 28px; margin-top: 25px; }
.account-settings-form fieldset { grid-column: 1 / -1; margin: 0; border: 1px solid var(--line); border-radius: 14px; padding: 18px; }
.account-settings-form legend { color: var(--navy); padding: 0 8px; font-size: .72rem; font-weight: 850; }
.account-choice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.account-check { display: flex; min-height: 44px; align-items: center; gap: 9px; border: 1px solid var(--line-soft); border-radius: 10px; background: #fff; color: var(--navy); padding: 10px 12px; font-size: .72rem; font-weight: 750; }
.account-check input { width: 16px; height: 16px; flex: 0 0 auto; accent-color: var(--cobalt); }
.account-select { display: flex; flex-direction: column; gap: 8px; color: var(--navy); font-size: .72rem; font-weight: 850; }
.account-select select { min-height: 48px; border: 1px solid #cfd8e6; border-radius: 9px; background: #fff; color: var(--navy); padding: 0 13px; }
.account-email-check { align-self: end; }
.account-settings-form > .button { width: fit-content; margin-top: 0; }
.account-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
.account-actions .text-link { margin-top: 15px; color: var(--cobalt); font-size: .72rem; font-weight: 850; }
.account-password { margin-top: 18px; border-top: 1px solid var(--line-soft); padding-top: 15px; }
.account-password summary { width: fit-content; color: var(--cobalt); font-size: .72rem; font-weight: 850; }
.account-password form { display: grid; gap: 11px; margin-top: 15px; }
.account-password label { display: grid; gap: 6px; color: var(--navy); font-size: .68rem; font-weight: 800; }
.account-password label small { color: var(--muted); font-weight: 600; }
.account-password input { width: 100%; min-height: 45px; border: 1px solid #cfd8e6; border-radius: 9px; background: #fff; color: var(--navy); padding: 0 12px; }
.account-password .button { width: fit-content; margin-top: 2px; }
.account-privacy-panel { display: flex; min-height: 0 !important; align-items: center; justify-content: space-between; gap: 30px; }
.account-privacy-panel h2 { margin-bottom: 7px; }
.account-privacy-panel p { margin-bottom: 0; }
.account-privacy-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px; }
.account-privacy-actions form { margin: 0; }
.account-privacy-actions .button { margin-top: 0; white-space: nowrap; }
.search-page-tool { max-width: 900px; margin: 25px auto 0; }
.search-page-tool label { display: flex; flex-direction: column; gap: 8px; color: var(--navy); font-weight: 800; }
.search-page-tool input { min-height: 58px; font-size: 1rem; box-shadow: var(--shadow-soft); }
.search-results { overflow: hidden; margin-top: 14px; border: 1px solid var(--line); border-radius: 15px; background: #fff; }
.search-results > a { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line-soft); color: var(--navy); padding: 16px 20px; }
.search-results > a:last-child { border-bottom: 0; }
.search-results a > span { display: flex; flex-direction: column; }
.search-results small { color: var(--muted); }
.search-results b { color: var(--cobalt); }

/* Responsive */
@media (max-width: 1280px) {
  .site-header { grid-template-columns: auto 1fr auto; gap: 20px; padding-inline: 36px; }
  .desktop-nav { gap: 20px; }
  .desktop-nav a { font-size: .82rem; }
  .hero-copy { width: 54%; }
  .home-hero blockquote { right: 3vw; width: 230px; }
  .market-card-grid { grid-template-columns: repeat(3,1fr); }
  .market-card-grid > article:nth-child(n+4) { grid-column: span 1; }
  .module-grid { grid-template-columns: repeat(3,1fr); }
  .module-grid article { min-height: 170px; }
  .market-dashboard-grid { grid-template-columns: 1fr 1fr; }
  .world-map-panel { grid-column: 1 / -1; }
  .theme-insight-grid { grid-template-columns: 1fr 1fr; }
  .how-step-grid { gap: 14px; }
  .how-step-grid article { padding-inline: 17px; }
  .step-arrow { right: -22px; }
  .product-sidebar { width: 220px; }
  .product-main { margin-left: 220px; }
  .product-page { width: min(1400px,calc(100% - 34px)); }
  .cluster-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 1080px) {
  .desktop-nav { display: none; }
  .site-header { grid-template-columns: 1fr auto auto; }
  .mobile-menu { display: block; }
  .home-hero { min-height: 680px; background-position: 58% center; }
  .hero-copy { width: 60%; padding-left: 42px; }
  .hero-copy h1 { font-size: clamp(3.7rem,7.3vw,6rem); }
  .home-hero blockquote { display: none; }
  .market-pulse-card { right: 30px; width: 410px; grid-template-columns: 1fr 140px; }
  .themes-hero .public-hero-copy, .research-hero .public-hero-copy, .pricing-hero .public-hero-copy { width: 68%; }
  .teaser-grid { grid-template-columns: 1fr 1fr; }
  .intelligence-lock { grid-template-columns: 1fr; }
  .steps-row { grid-template-columns: 1fr 1fr; }
  .site-footer { grid-template-columns: 1.4fr 1fr 1fr; gap: 35px; }
  .site-footer > div:last-child { grid-column: 1 / -1; }
  .market-bottom-grid { grid-template-columns: 1fr; }
  .theme-dashboard-grid { grid-template-columns: 1fr; }
  .research-card-grid-page { grid-template-columns: 1fr 1fr; }
  .how-step-grid { grid-template-columns: 1fr 1fr; }
  .step-arrow { display: none; }
  .how-hero { min-height: 1180px; }
  .pricing-grid { gap: 12px; }
  .plan-card { padding: 30px 24px; }
  .glossary-grid { grid-template-columns: 1fr 1fr; }
  .method-section { grid-template-columns: 1fr; gap: 30px; }
  .proof-principles { grid-template-columns: 1fr 1fr; }
  .product-sidebar { display: none; }
  .product-main { margin-left: 0; }
  .product-drawer { display: block; }
  .product-topbar { justify-content: space-between; }
  .mobile-dock { position: fixed; z-index: 40; right: 12px; bottom: 10px; left: 12px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.95); padding: 8px; box-shadow: 0 12px 36px rgba(15,31,65,.22); backdrop-filter: blur(12px); }
  .mobile-dock a { display: flex; flex-direction: column; align-items: center; gap: 2px; color: var(--navy-2); font-size: .61rem; }
  .mobile-dock span { color: var(--cobalt); font-size: 1rem; }
  .product-page { padding-bottom: 110px; }
}

@media (max-width: 820px) {
  .section-shell, .trust-strip { width: min(100% - 30px,1500px); }
  .site-header { padding: 18px 16px; }
  .header-actions { display: none; }
  .site-header { grid-template-columns: 1fr auto; }
  .home-hero { min-height: 680px; background-position: 64% center; }
  .home-hero::after, .themes-hero::after, .research-hero::after, .pricing-hero::after, .markets-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(251,250,246,.97) 0%,rgba(251,250,246,.82) 48%,rgba(251,250,246,.18) 100%); }
  .site-header, .hero-copy, .public-hero-copy, .market-pulse-card { z-index: 3; }
  .hero-copy { position: relative; width: 78%; padding: 135px 22px 60px; }
  .hero-copy h1 { font-size: clamp(3.3rem,12vw,5.2rem); }
  .home-snapshot { margin-top: -25px; padding: 17px; }
  .market-card-grid { grid-template-columns: 1fr 1fr; }
  .home-two-column { grid-template-columns: 1fr; }
  .theme-chips { grid-template-columns: repeat(3,1fr); row-gap: 18px; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .proof-preview { grid-template-columns: 1fr; padding: 36px 28px; }
  .research-card-grid { grid-template-columns: 1fr; }
  .home-pricing-cta { align-items: flex-start; flex-direction: column; padding: 34px 24px; }
  .trust-strip { grid-template-columns: 1fr; }
  .trust-strip > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .trust-strip > div:last-child { border-bottom: 0; }
  .site-footer { grid-template-columns: 1fr 1fr; padding: 44px 24px; }
  .site-footer > div:first-child, .site-footer > div:last-child { grid-column: 1 / -1; }
  .public-hero-copy, .markets-hero .public-hero-copy, .themes-hero .public-hero-copy, .research-hero .public-hero-copy, .pricing-hero .public-hero-copy { width: 78%; padding: 125px 20px 60px; }
  .market-pulse-card { position: relative; top: auto; right: auto; width: calc(100% - 30px); margin: -20px auto 25px; }
  .markets-hero { overflow: visible; min-height: 470px; margin-bottom: 170px; }
  .market-dashboard-grid { grid-template-columns: 1fr; }
  .world-map-panel { grid-column: auto; }
  .theme-metrics { grid-template-columns: 1fr 1fr; }
  .theme-insight-grid { grid-template-columns: 1fr; }
  .featured-research { grid-template-columns: 1fr; }
  .featured-visual { min-height: 330px; }
  .research-layout { grid-template-columns: 1fr; }
  .research-topic-list { position: static; }
  .pedagogy-section { grid-template-columns: 1fr; gap: 35px; }
  .method-cta { align-items: flex-start; flex-direction: column; padding: 35px 25px; }
  .pricing-content { margin-top: -40px; }
  .pricing-grid { grid-template-columns: 1fr; }
  .plan-card.popular { transform: none; }
  .method-intro-grid { grid-template-columns: 1fr; }
  .evidence-types { grid-template-columns: 1fr; }
  .ledger-summary-grid { grid-template-columns: 1fr 1fr; }
  .access-page { grid-template-columns: 1fr; padding: 90px 0 40px; }
  .access-page > aside { display: none; }
  .access-card { width: min(560px,calc(100% - 28px)); }
  .product-hero, .detail-hero { align-items: flex-start; flex-direction: column; }
  .hero-data-state, .hero-stat { width: 100%; }
  .four-metrics { grid-template-columns: 1fr 1fr; }
  .workspace-split, .detail-layout, .watchlist-grid { grid-template-columns: 1fr; }
  .unlock-panel, .detail-side-column { position: static; }
  .cluster-grid { grid-template-columns: 1fr 1fr; }
  .journey-mini { width: 100%; min-width: 0; }
  .propagation-flow { grid-template-columns: 1fr; justify-items: center; }
  .propagation-flow b { transform: rotate(90deg); }
  .proof-shell { align-items: flex-start; flex-direction: column; }
  .alert-settings, .account-grid { grid-template-columns: 1fr; }
  .alert-settings > .data-note { grid-column: auto; }
  .account-panel-wide { grid-column: auto; }
  .account-privacy-panel { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 560px) {
  h1 { font-size: 3rem; }
  h2 { font-size: 2rem; }
  .brand { font-size: .88rem; }
  .brand-mark { width: 30px; height: 29px; transform: scale(.86); transform-origin: left center; }
  .home-hero { min-height: 720px; background-position: 69% center; }
  .home-hero::after { background: linear-gradient(90deg,rgba(251,250,246,.98) 0%,rgba(251,250,246,.9) 63%,rgba(251,250,246,.25) 100%); }
  .hero-copy, .public-hero-copy, .markets-hero .public-hero-copy, .themes-hero .public-hero-copy, .research-hero .public-hero-copy, .pricing-hero .public-hero-copy { width: 94%; }
  .hero-copy > p, .public-hero-copy > p { font-size: 1rem; }
  .hero-actions, .how-actions { align-items: stretch; flex-direction: column; }
  .button { width: 100%; }
  .play-link { justify-content: center; }
  .market-card-grid, .theme-metrics, .four-metrics, .cluster-grid, .ledger-summary-grid { grid-template-columns: 1fr; }
  .theme-chips { grid-template-columns: 1fr 1fr; }
  .teaser-grid, .steps-row { grid-template-columns: 1fr; }
  .module-grid { grid-template-columns: 1fr; }
  .intelligence-lock { padding: 24px; }
  .site-footer { grid-template-columns: 1fr; gap: 30px; }
  .site-footer > div { grid-column: auto !important; }
  .market-pulse-card { grid-template-columns: 1fr; }
  .market-card-grid-large { grid-template-columns: 1fr; }
  .provider-table { overflow-x: auto; }
  .provider-table > div { min-width: 660px; }
  .relationship-canvas { min-height: 600px; }
  .node { width: 135px; }
  .node-ai { left: 12px; }.node-energy { right: 12px; }.node-semi { left: 12px; }.node-hard { right: 12px; }
  .research-card-grid-page { grid-template-columns: 1fr; }
  .how-step-grid { width: calc(100% - 28px); grid-template-columns: 1fr; }
  .how-hero { min-height: 2020px; }
  .pedagogy-section ol { grid-template-columns: 1fr; }
  .glossary-grid { grid-template-columns: 1fr; }
  .method-section { padding-block: 60px; }
  .confidence-components > div { grid-template-columns: 1fr; }
  .validation-section li { grid-template-columns: 1fr; gap: 3px; }
  .proof-principles { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .product-topbar { padding: 0 15px; }
  .product-search-link { width: 42px; min-width: 42px; flex: 0 0 42px; justify-content: center; overflow: hidden; padding: 0; font-size: 0; white-space: nowrap; }
  .product-search-link::before { content: "⌕"; color: var(--cobalt); font-size: 1rem; font-weight: 900; }
  .product-page { width: calc(100% - 22px); }
  .product-hero, .detail-hero { padding: 24px 20px; }
  .product-hero h1, .detail-title h1 { font-size: 2.75rem; }
  .filter-bar { grid-template-columns: 1fr; }
  .table-head { display: none; }
  .table-row { grid-template-columns: 1fr; gap: 9px; padding: 18px; }
  .candidate-name p { display: none; }
  .table-row > span, .row-link { padding-left: 54px; }
  .table-row > span::before { color: var(--muted); font-size: .62rem; font-weight: 700; }
  .table-row > span:nth-child(2)::before { content: "State: "; }
  .table-row > span:nth-child(3)::before { content: "Market Gap: "; }
  .table-row > span:nth-child(4)::before { content: "Confidence: "; }
  .detail-title { align-items: flex-start; flex-direction: column; }
  .evidence-placeholder { grid-template-columns: 1fr; }
  .risk-list { grid-template-columns: 1fr; }
  .watchlist-row { grid-template-columns: 1fr; }
  .watchlist-head { display: none; }
  .add-control { width: 100%; flex-direction: column; }
  .add-control select { min-width: 0; }
  .panel-heading { align-items: flex-start; flex-direction: column; }
  .alert-settings > button { align-items: flex-start; }
  .account-panel-heading { flex-direction: column; gap: 5px; }
  .account-settings-form { grid-template-columns: 1fr; }
  .account-choice-grid { grid-template-columns: 1fr 1fr; }
  .account-settings-form > .button, .account-privacy-actions, .account-privacy-actions form { width: 100%; }
}

@media (max-width: 380px) {
  .account-choice-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* v1.7 visual acceptance lock — approved concept proportions and hierarchy */
:root {
  --pearl: #fbfaf7;
  --navy: #07122f;
  --navy-2: #1b2b50;
  --muted: #63708a;
  --line: #e0e5ee;
  --line-soft: #edf0f5;
  --shadow: 0 16px 44px rgba(26, 43, 78, .075);
  --shadow-soft: 0 7px 24px rgba(26, 43, 78, .055);
}

body { font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; font-size: 15px; line-height: 1.5; }
h1, h2, h3 { font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Baskerville, Georgia, serif; font-weight: 500; letter-spacing: -.045em; }
h1 { font-size: clamp(3rem, 4.7vw, 5.3rem); }
h2 { font-size: clamp(2rem, 2.7vw, 3.15rem); }
h3 { font-size: 1.28rem; }
.section-shell { width: min(1360px, calc(100% - 64px)); }
.panel { border-color: rgba(211, 219, 232, .82); box-shadow: var(--shadow-soft); }
.eyebrow { font-size: .7rem; letter-spacing: .13em; }
.button { min-height: 44px; border-radius: 8px; padding-inline: 22px; font-size: .82rem; }
.button-small { min-height: 40px; }
.play-link { font-size: .82rem; }
.play-link > span { width: 34px; height: 34px; }

/* Brand and top navigation */
.brand { gap: 8px; font-size: .98rem; font-weight: 850; letter-spacing: -.025em; }
.brand-symbol { width: 34px; height: 32px; flex: 0 0 auto; overflow: visible; }
.brand-compact { font-size: .9rem; }
.site-header { min-height: 78px; grid-template-columns: minmax(210px, 1fr) auto minmax(210px, 1fr); padding: 16px clamp(30px, 5.2vw, 78px); }
.desktop-nav { gap: clamp(25px, 3vw, 48px); }
.desktop-nav a { font-size: .84rem; font-weight: 700; }
.header-actions { gap: 24px; }

/* Home: the hero is a controlled first viewport, not a full-page image */
.home-hero { min-height: 520px; background-image: none; background-color: var(--pearl); }
.home-hero-art { position: absolute; z-index: 0; inset: 0 0 0 auto; width: 66%; height: 100%; object-fit: cover; object-position: 58% center; }
.home-hero::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(251,250,247,.99) 0%, rgba(251,250,247,.97) 27%, rgba(251,250,247,.72) 38%, rgba(251,250,247,.08) 51%, rgba(251,250,247,0) 61%); pointer-events: none; }
.home-hero .site-header, .hero-copy, .home-hero blockquote { position: relative; z-index: 2; }
.hero-copy { width: 43%; max-width: 520px; padding: 104px 0 42px; margin-left: clamp(42px, 6vw, 96px); }
.hero-copy h1 { max-width: 460px; margin: 4px 0 12px; font-size: clamp(3.3rem, 4.5vw, 4.65rem); line-height: .98; }
.hero-copy > p { max-width: 510px; margin-bottom: 0; font-size: 1rem; line-height: 1.42; }
.hero-actions { gap: 20px; margin-top: 19px; }
.hero-trust { margin-top: 16px; font-size: .72rem; }
.home-hero blockquote { position: absolute; right: 4.8vw; bottom: 54px; width: 238px; font-size: 1rem; }
.home-hero blockquote b { font-size: 2.6rem; }
.home-hero blockquote cite { margin-top: 11px; font-size: .66rem; }

.home-snapshot { margin-top: -30px; border-radius: 16px; padding: 14px 16px 12px; }
.snapshot-header { display: flex; min-height: 30px; align-items: center; justify-content: space-between; padding: 0 5px 9px; }
.snapshot-header h2 { margin: 0; font-family: inherit; font-size: .76rem; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.snapshot-header a { font-size: .69rem; font-weight: 800; }
.home-overview-layout { display: grid; grid-template-columns: minmax(0, 1.85fr) minmax(330px, 1fr); }
.home-overview-layout .market-card-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; }
.home-overview-layout .market-card { min-height: 92px; grid-template-columns: 38px 1fr; gap: 9px; border: 0; border-right: 1px solid var(--line-soft); border-radius: 0; padding: 9px 13px; }
.home-overview-layout .market-card .icon { width: 36px; height: 36px; }
.home-overview-layout .market-card strong { font-size: .77rem; }
.home-overview-layout .market-card small { font-size: .61rem; }
.home-overview-layout .market-card .data-state { margin-top: 1px; }
.home-overview-layout .data-state-compact strong { color: #9b6a12; font-size: .61rem; font-weight: 750; }
.home-overview-layout .status-dot { width: 6px; height: 6px; margin-top: 4px; box-shadow: 0 0 0 3px var(--gold-soft); }
.leading-themes { border-left: 1px solid var(--line); padding: 7px 12px 5px 18px; }
.leading-themes .panel-heading { align-items: center; }
.leading-themes h3 { margin: 0; font-family: inherit; font-size: .74rem; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; }
.leading-themes .panel-heading a { font-size: .66rem; font-weight: 800; }
.theme-chips { margin-top: 10px; }
.leading-themes .theme-chips { grid-template-columns: repeat(5, 1fr); }
.leading-themes .theme-chips .icon { width: 33px; height: 33px; }
.leading-themes .theme-chips span { font-size: .59rem; line-height: 1.15; }
.activity-state-mini { display: flex; min-height: 32px; align-items: center; gap: 9px; border-top: 1px solid var(--line-soft); margin-top: 8px; padding: 8px 5px 0; font-size: .66rem; }
.activity-state-mini > span:not(.status-dot) { overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.activity-state-mini a { margin-left: auto; font-weight: 800; white-space: nowrap; }

.opportunity-teaser { padding-block: 58px 22px; }
.opportunity-teaser .section-heading { margin-bottom: 16px; }
.opportunity-teaser .section-heading h2 { margin: 4px 0; font-size: 2.2rem; }
.opportunity-teaser .section-heading p { font-size: .84rem; }
.teaser-grid { grid-template-columns: 1.25fr repeat(3, 1fr) .88fr; gap: 10px; }
.teaser-grid > article { min-height: 185px; border-radius: 13px; padding: 18px; }
.teaser-intro h3 { margin: 13px 0 6px; font-size: 1.08rem; }
.teaser-intro p, .teaser-cta p { font-size: .72rem; line-height: 1.42; }
.teaser-intro a, .locked-opportunity a { font-size: .69rem; }
.locked-opportunity .lock-badge, .teaser-cta .lock-badge { width: 36px; height: 36px; font-size: .95rem; }
.blur-line { margin: 17px 0 9px; }
.locked-opportunity dl { margin: 12px 0; }
.locked-opportunity a { bottom: 15px; }
.teaser-cta { display: flex; flex-direction: column; align-items: flex-start; background: linear-gradient(145deg, #fff, #fff9ee) !important; }
.teaser-cta > strong { margin: 15px 0 6px; font-size: .77rem; }
.teaser-cta .button { width: 100%; margin-top: auto; padding-inline: 10px; }

.intelligence-lock { grid-template-columns: 1.05fr 3.4fr; gap: 20px; padding: 25px; }
.lock-intro h2 { font-size: 2.3rem; }
.lock-intro p { font-size: .78rem; }
.module-grid { grid-template-columns: repeat(6, 1fr); gap: 8px; }
.module-grid article { min-height: 155px; padding: 14px 9px; }
.module-grid .icon { width: 35px; height: 35px; margin-bottom: 9px; }
.module-grid strong { font-size: .7rem; }
.module-grid p { font-size: .61rem; }
.how-preview, .research-preview { padding-block: 72px; }
.steps-row article { min-height: 205px; padding: 23px; }
.steps-row h3 { margin-top: 24px; }
.proof-preview { padding: 46px; }
.research-card { min-height: 250px; padding: 24px; }
.home-pricing-cta { margin-bottom: 64px; padding: 40px; }

/* Public page heroes follow the concept rhythm without repeating the mountain */
.public-hero-copy { max-width: 650px; padding: 112px 0 46px clamp(42px, 5.2vw, 78px); }
.public-hero-copy h1 { margin: 2px 0 11px; font-size: clamp(3.25rem, 4.8vw, 5rem); }
.public-hero-copy > p { max-width: 570px; font-size: 1rem; line-height: 1.42; }
.markets-hero { min-height: 365px; background-image: url('../sites-v34/product-shell-bg.webp'); background-position: center; }
.markets-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 88% 34%, rgba(7,87,247,.09), transparent 26%), linear-gradient(115deg, transparent 55%, rgba(200,134,19,.06)); }
.market-pulse-card { top: 112px; right: 5.2vw; width: min(455px, 38vw); grid-template-columns: 1fr 150px; padding: 20px 23px; }
.themes-hero { min-height: 400px; background-position: center right; }
.research-hero { min-height: 390px; background-position: center; }
.research-hero .public-hero-copy { padding-top: 115px; }
.research-hero .public-hero-copy h1 { font-size: clamp(3.1rem, 4.6vw, 4.8rem); }
.pricing-hero { min-height: 455px; background-position: center; }
.pricing-hero .public-hero-copy { width: 54%; }
.pricing-hero .public-hero-copy h1 { font-size: clamp(3.1rem, 4.6vw, 4.75rem); }
.pricing-principles { gap: 20px; margin-top: 18px; font-size: .75rem; }
.pricing-content { margin-top: -72px; }
.plan-card { min-height: 555px; border-radius: 18px; padding: 34px; }
.plan-card.popular { transform: translateY(-12px); }
.how-hero { min-height: 800px; padding-bottom: 44px; }
.how-title { padding: 118px 24px 36px; }
.how-step-grid { width: min(1320px, calc(100% - 64px)); gap: 16px; }
.how-step-grid article { min-height: 330px; border-radius: 17px; padding: 22px 19px; }
.how-step-grid .icon { width: 72px; height: 72px; margin: 21px 0 15px; }
.how-step-grid h2 { font-size: 1.45rem; }
.how-actions { margin: 25px 0; }
.featured-visual { background: url('../sites-v34/research-bg.webp') 66% center/cover; }
.lens-graphic { display: none; }

/* Authenticated product shell: calm, compact, and information-first */
.product-shell { background-color: #fbfaf7; background-image: url('../sites-v34/product-shell-bg.webp'); background-size: 1500px auto; background-position: right top; background-repeat: no-repeat; }
.product-sidebar { width: 228px; padding: 22px 13px 15px; }
.product-sidebar .brand { margin: 0 8px 22px; }
.product-sidebar nav { gap: 2px; }
.product-sidebar nav a { min-height: 41px; font-size: .72rem; }
.product-main { margin-left: 228px; }
.product-topbar { height: 62px; padding: 0 28px; }
.product-page { width: min(1340px, calc(100% - 44px)); padding-top: 22px; }
.product-hero { min-height: 174px; border: 0; border-radius: 0; background-color: transparent; padding: 20px 8px; box-shadow: none; }
.opportunity-product-hero { background-image: url('../sites-v34/opportunity-bg.webp'); background-size: cover; background-position: center right; }
.product-hero h1 { margin: 4px 0 7px; font-size: clamp(3.05rem, 4.5vw, 4.9rem); }
.product-hero p { max-width: 690px; font-size: .88rem; }
.hero-data-state { width: 290px; padding: 15px; }
.metric-grid { margin-top: 11px; }
.metric-card { min-height: 100px; border-radius: 13px; padding: 15px 17px; }
.metric-card .icon { width: 43px; height: 43px; }
.metric-card strong { font-size: 1.12rem; }
.workspace-split { margin-top: 13px; }
.filter-bar { padding: 9px; }
.table-caption { padding: 17px 4px 10px; }
.table-row { padding-block: 12px; }
.unlock-panel { padding: 23px; }
.cluster-section { margin-top: 34px; }
.cluster-grid article { min-height: 160px; padding: 18px; }
.detail-hero { min-height: 230px; padding: 26px; }
.detail-title h1 { font-size: clamp(2.75rem, 4vw, 4.45rem); }
.detail-hero p { font-size: .84rem; }
.detail-tabs { padding-top: 16px; }
.narrative-card { padding: 25px; }
.narrative-card h2 { font-size: 1.8rem; }
.watchlist-product-hero { background-position: center right; }
.mobile-dock { grid-template-columns: repeat(5, 1fr); }

/* Compact public/support pages */
.static-page-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--line); background: #fbfaf7 url('../sites-v34/product-shell-bg.webp') right top/cover no-repeat; padding: 122px 0 58px; }
.static-page-hero > div { width: min(980px, calc(100% - 64px)); margin: auto; }
.static-page-hero h1 { margin: 6px 0 12px; }
.static-page-hero p { max-width: 700px; margin-bottom: 0; font-size: 1.02rem; }
.static-page-content { width: min(980px, calc(100% - 64px)); margin: auto; padding: 55px 0 90px; }
.static-page-content > section { border-bottom: 1px solid var(--line); padding: 0 0 36px; margin-bottom: 36px; }
.static-page-content > section:last-child { border-bottom: 0; }
.static-page-content h2 { margin-bottom: 14px; font-size: 2rem; }
.static-page-content h3 { margin: 25px 0 8px; font-family: inherit; font-size: 1rem; font-weight: 800; letter-spacing: -.01em; }
.static-page-content p, .static-page-content li { font-size: .9rem; }
.static-page-content ul { padding-left: 20px; }
.static-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.static-grid article { border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 22px; }
.static-grid article h3 { margin-top: 0; }
.faq-list details { border-bottom: 1px solid var(--line); background: #fff; padding: 18px 20px; }
.faq-list details:first-child { border-radius: 14px 14px 0 0; }
.faq-list details:last-child { border-radius: 0 0 14px 14px; }
.faq-list summary { color: var(--navy); font-weight: 800; }
.faq-list p { margin: 12px 0 0; }

/* Daily briefing, macro context and complete support journeys */
.daily-summary-grid { grid-template-columns: repeat(4, 1fr); }
.today-layout, .macro-layout { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(280px, .72fr); gap: 14px; align-items: start; margin-top: 14px; }
.today-focus, .today-rail, .change-feed, .macro-map, .macro-guardrails { padding: 24px; }
.today-focus h2, .macro-map h2 { margin: 5px 0 10px; font-size: 1.8rem; }
.today-focus > p, .macro-map > p { max-width: 820px; font-size: .8rem; }
.empty-intelligence-state { display: flex; min-height: 245px; flex-direction: column; align-items: center; justify-content: center; border: 1px dashed #cfd8e7; border-radius: 14px; background: linear-gradient(145deg, #fbfcff, #fffaf1); padding: 28px; text-align: center; }
.empty-intelligence-state .icon { width: 56px; height: 56px; }
.empty-intelligence-state strong { margin: 14px 0 5px; }
.empty-intelligence-state span { max-width: 540px; color: var(--muted); font-size: .74rem; }
.empty-intelligence-state .button { margin-top: 18px; }
.today-rail h2, .macro-guardrails h2 { margin: 12px 0 18px; font-size: 1.65rem; }
.today-rail ol { display: flex; flex-direction: column; gap: 0; padding: 0; list-style: none; }
.today-rail li { display: flex; flex-direction: column; border-top: 1px solid var(--line-soft); padding: 14px 0; }
.today-rail li strong { font-size: .78rem; }
.today-rail li span, .today-rail a, .macro-guardrails li, .macro-guardrails a { color: var(--muted); font-size: .7rem; }
.today-rail a, .macro-guardrails a { color: var(--cobalt); font-weight: 800; }
.change-feed { margin-top: 14px; }
.change-feed h2 { margin: 4px 0 16px; font-size: 1.55rem; }
.macro-regime-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin-top: 11px; }
.macro-regime-grid article { display: flex; min-height: 118px; flex-direction: column; align-items: flex-start; padding: 15px; }
.macro-regime-grid .icon { width: 36px; height: 36px; margin-bottom: 12px; }
.macro-regime-grid span, .macro-regime-grid small { color: var(--muted); font-size: .64rem; }
.macro-regime-grid strong { margin: 3px 0; font-size: .75rem; }
.regime-quadrants { position: relative; display: grid; min-height: 300px; grid-template-columns: 1fr 1fr; place-items: center; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(90deg, transparent 49.8%, #dfe5ee 50%, transparent 50.2%), linear-gradient(0deg, transparent 49.8%, #dfe5ee 50%, transparent 50.2%), radial-gradient(circle, rgba(7,87,247,.07), transparent 48%), #fbfcff; padding: 25px; }
.regime-quadrants::before { content: ""; position: absolute; width: 62px; height: 62px; border: 2px solid var(--gold-2); border-radius: 50%; background: rgba(255,255,255,.9); box-shadow: 0 9px 24px rgba(200,134,19,.16); }
.regime-quadrants span { color: var(--muted); font-size: .68rem; font-weight: 750; }
.regime-quadrants strong { position: absolute; z-index: 2; width: 150px; color: #986008; font-size: .7rem; text-align: center; }
.macro-guardrails ul { display: flex; flex-direction: column; gap: 11px; padding-left: 18px; }
.help-grid, .onboarding-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 14px; }
.help-grid > a, .onboarding-grid > article { display: flex; min-height: 230px; flex-direction: column; align-items: flex-start; color: var(--navy); padding: 24px; }
.help-grid > a > span, .onboarding-grid > article > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-size: .72rem; font-weight: 900; }
.help-grid h2, .onboarding-grid h2 { margin: 30px 0 8px; font-size: 1.45rem; }
.help-grid p, .onboarding-grid p { margin-bottom: 0; font-size: .78rem; }
.help-grid > a { transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.help-grid > a:hover { transform: translateY(-2px); border-color: #aac1ed; box-shadow: var(--shadow); }
.onboarding-grid > article .button { width: 100%; margin-top: auto; }
.onboarding-grid button:disabled { border-color: var(--line); background: #eef1f5; color: #8993a6; box-shadow: none; cursor: not-allowed; }
.onboarding-action { padding-top: 20px; text-align: right; }

@media (max-width: 1180px) {
  .site-header { grid-template-columns: auto 1fr auto; padding-inline: 28px; }
  .desktop-nav { gap: 22px; }
  .home-hero-art { width: 70%; object-position: 57% center; }
  .hero-copy { width: 50%; margin-left: 42px; }
  .home-hero blockquote { right: 2.5vw; }
  .home-overview-layout { grid-template-columns: 1fr; }
  .leading-themes { border-top: 1px solid var(--line); border-left: 0; padding-top: 13px; }
  .teaser-grid { grid-template-columns: 1.15fr repeat(2, 1fr); }
  .teaser-grid > article:last-child, .teaser-grid > article:nth-child(4) { min-height: 170px; }
  .module-grid { grid-template-columns: repeat(3, 1fr); }
  .macro-regime-grid { grid-template-columns: repeat(3, 1fr); }
  .product-sidebar { width: 218px; }
  .product-main { margin-left: 218px; }
}

@media (max-width: 1080px) {
  .home-hero { min-height: 500px; }
  .hero-copy { width: 58%; }
  .home-hero blockquote { display: none; }
  .how-hero { min-height: 1090px; }
  .product-main { margin-left: 0; }
}

@media (max-width: 820px) {
  .section-shell, .trust-strip { width: calc(100% - 28px); }
  .brand { font-size: .88rem; }
  .home-hero { min-height: 590px; }
  .home-hero-art { width: 76%; object-position: 59% center; }
  .home-hero::before { background: linear-gradient(90deg, rgba(251,250,247,.99) 0%, rgba(251,250,247,.94) 53%, rgba(251,250,247,.42) 84%, rgba(251,250,247,.12)); }
  .hero-copy { width: 76%; max-width: none; margin-left: 24px; padding-top: 108px; }
  .hero-copy h1 { font-size: clamp(3.2rem, 10vw, 4.6rem); }
  .home-overview-layout .market-card-grid { grid-template-columns: repeat(2, 1fr); }
  .home-overview-layout .market-card { border-bottom: 1px solid var(--line-soft); }
  .leading-themes .theme-chips { grid-template-columns: repeat(3, 1fr); }
  .activity-state-mini > span:not(.status-dot) { display: none; }
  .teaser-grid { grid-template-columns: 1fr 1fr; }
  .intelligence-lock { grid-template-columns: 1fr; }
  .module-grid { grid-template-columns: repeat(2, 1fr); }
  .public-hero-copy, .markets-hero .public-hero-copy, .themes-hero .public-hero-copy, .research-hero .public-hero-copy, .pricing-hero .public-hero-copy { width: 78%; padding-top: 112px; }
  .markets-hero::after, .themes-hero::after, .research-hero::after, .pricing-hero::after { background: linear-gradient(90deg, rgba(251,250,247,.98), rgba(251,250,247,.84) 62%, rgba(251,250,247,.2)); }
  .markets-hero { margin-bottom: 145px; }
  .market-pulse-card { margin-top: -16px; }
  .pricing-content { margin-top: -38px; }
  .product-page { width: calc(100% - 24px); }
  .product-hero { border-radius: 16px; padding-inline: 20px; }
  .static-grid { grid-template-columns: 1fr; }
  .daily-summary-grid { grid-template-columns: 1fr 1fr; }
  .today-layout, .macro-layout { grid-template-columns: 1fr; }
  .help-grid, .onboarding-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .site-header { min-height: 66px; }
  .brand { font-size: .82rem; }
  .home-hero { min-height: 570px; }
  .home-hero-art { width: 100%; object-position: 62% center; opacity: .65; }
  .hero-copy { width: calc(100% - 36px); margin-left: 18px; padding: 96px 0 32px; }
  .hero-copy h1 { font-size: 3.25rem; }
  .home-snapshot { margin-top: -18px; }
  .snapshot-header a { display: none; }
  .home-overview-layout .market-card-grid { grid-template-columns: 1fr; }
  .home-overview-layout .market-card { min-height: 72px; grid-template-columns: 36px 1fr auto; border-right: 0; }
  .home-overview-layout .market-card .data-state { grid-column: auto; }
  .leading-themes .theme-chips { grid-template-columns: 1fr 1fr; }
  .activity-state-mini { align-items: flex-start; flex-wrap: wrap; }
  .activity-state-mini a { width: 100%; margin-left: 15px; }
  .teaser-grid { grid-template-columns: 1fr; }
  .module-grid { grid-template-columns: 1fr 1fr; }
  .proof-preview { padding: 30px 22px; }
  .public-hero-copy, .markets-hero .public-hero-copy, .themes-hero .public-hero-copy, .research-hero .public-hero-copy, .pricing-hero .public-hero-copy { width: 94%; padding-top: 96px; }
  .how-hero { min-height: 1820px; }
  .plan-card { min-height: auto; }
  .product-topbar { height: 58px; }
  .product-hero { min-height: 0; }
  .product-hero h1 { font-size: 2.65rem; }
  .four-metrics { grid-template-columns: 1fr 1fr; }
  .metric-card { min-height: 90px; padding: 12px; }
  .metric-card .icon { width: 34px; height: 34px; }
  .static-page-hero > div, .static-page-content { width: calc(100% - 28px); }
  .static-page-hero { padding-top: 98px; }
  .daily-summary-grid, .macro-regime-grid, .help-grid, .onboarding-grid { grid-template-columns: 1fr; }
  .regime-quadrants { min-height: 260px; }
}

/* Premium UX revision — sticky live chrome, exact brand and answer-first pages */
:root {
  --header-height: 74px;
  --ticker-height: 40px;
  --premium-blue: #075df5;
  --premium-blue-dark: #063bb8;
}

.button {
  position: relative;
  overflow: hidden;
  min-height: 46px;
  border: 1px solid rgba(3, 53, 177, .72);
  border-radius: 12px;
  background: radial-gradient(circle at 25% 0%, #3790ff 0, #0a64f6 32%, #073fc8 100%);
  padding-inline: 24px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.34), 0 8px 18px rgba(7, 73, 210, .18), 0 2px 5px rgba(7, 44, 119, .12);
  font-size: .8rem;
  letter-spacing: -.005em;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.button::after { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 15%, rgba(255,255,255,.18) 45%, transparent 70%); transform: translateX(-120%); transition: transform .5s ease; }
.button:hover { transform: translateY(-2px); filter: saturate(1.05); box-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 13px 25px rgba(7,73,210,.24), 0 3px 8px rgba(7,44,119,.14); }
.button:hover::after { transform: translateX(120%); }
.button-outline { border-color: #b8c8e6; background: linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,255,.94)); color: #084bcf; box-shadow: inset 0 1px 0 #fff, 0 5px 14px rgba(28,54,103,.07); }
.button-outline::after { display: none; }
.button:disabled { transform: none; filter: grayscale(.15); opacity: .7; cursor: wait; }

/* Exact legacy wordmark */
.brand { display: inline-flex; width: 214px; max-width: 100%; align-items: center; }
.brand img { width: 100%; height: auto; }
.brand .brand-logo-on-dark { display: none; }
.brand-compact { width: 188px; }
.site-footer .brand { width: 232px; }

/* The global header and market tape remain visible on every public page. */
.site-header,
.home-hero .site-header {
  position: fixed !important;
  z-index: 70;
  top: 0;
  left: 0;
  min-height: var(--header-height);
  height: var(--header-height);
  grid-template-columns: minmax(214px,1fr) auto minmax(205px,1fr);
  border-bottom: 1px solid rgba(212,221,235,.86);
  background: rgba(255,255,255,.91);
  padding: 12px clamp(28px,4.3vw,72px);
  box-shadow: 0 4px 18px rgba(16,39,80,.045);
  backdrop-filter: blur(18px) saturate(1.18);
}
.desktop-nav { gap: clamp(19px,2.2vw,35px); }
.desktop-nav a { font-size: .79rem; }
.header-actions { gap: 21px; }

.asi-v34-market-tape { width: 100%; height: var(--ticker-height); }
.asi-v34-market-tape--public { position: fixed; z-index: 68; top: var(--header-height); right: 0; left: 0; }
.asi-v34-market-tape .asi-market-tape { position: relative; z-index: 1; height: var(--ticker-height); overflow: hidden; border-bottom: 1px solid #dce6f1; background: linear-gradient(90deg,#f7faff 0,#fff 48%,#f5f9ff 100%); color: #17233a; }
.asi-v34-market-tape .asi-shell-container { width: 100%; margin: 0; }
.asi-v34-market-tape .asi-market-tape-inner { display: grid; height: var(--ticker-height); min-height: var(--ticker-height); grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; padding-inline: clamp(14px,2vw,30px); }
.asi-v34-market-tape .asi-market-tape-label { display: inline-flex; align-items: center; gap: 8px; padding-right: 12px; border-right: 1px solid #dce6f1; color: #285aa8; font: 800 9px/1 Arial,sans-serif; letter-spacing: .11em; white-space: nowrap; }
.asi-v34-market-tape .asi-market-tape-label i { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #1f75ff; box-shadow: 0 0 0 0 rgba(31,117,255,.34); animation: asiTapePulse 2.4s ease-out infinite; }
.asi-v34-market-tape .asi-market-tape-window { min-width: 0; overflow: hidden; -webkit-mask-image: linear-gradient(90deg,transparent,#000 22px,#000 calc(100% - 22px),transparent); mask-image: linear-gradient(90deg,transparent,#000 22px,#000 calc(100% - 22px),transparent); }
.asi-v34-market-tape .asi-market-tape-track { display: flex; width: max-content; will-change: transform; animation: asiMarketTapeScroll 44s linear infinite; }
.asi-v34-market-tape .asi-market-tape-group { display: flex; flex: 0 0 auto; align-items: center; }
.asi-v34-market-tape .asi-market-tape-item { display: flex; min-height: calc(var(--ticker-height) - 1px); align-items: baseline; gap: 8px; border-right: 1px solid #e4ebf3; padding: 0 18px; color: #17233a !important; text-decoration: none !important; white-space: nowrap; }
.asi-v34-market-tape .asi-market-tape-item:hover { background: rgba(229,239,253,.58); }
.asi-v34-market-tape .asi-market-tape-name { color: #53657a; font-size: 10px; font-weight: 800; letter-spacing: .025em; }
.asi-v34-market-tape .asi-market-tape-item strong { color: #142033; font: 700 11px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace; }
.asi-v34-market-tape .asi-market-tape-item em { min-width: 50px; font: 700 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace; font-style: normal; }
.asi-v34-market-tape .asi-market-tape-freshness { border-radius: 4px; background: #eef2f6; padding: 3px 5px; color: #526173; font: 800 7px/1 Arial,sans-serif; letter-spacing: .05em; }
.asi-v34-market-tape .asi-market-tape-freshness.is-live { background: #e4f7ef; color: #067454; }
.asi-v34-market-tape .asi-market-tape-freshness.is-latest { background: #eaf1ff; color: #245bdb; }
.asi-v34-market-tape .asi-market-tape-freshness.is-official,
.asi-v34-market-tape .asi-market-tape-freshness.is-completed,
.asi-v34-market-tape .asi-market-tape-freshness.is-delayed,
.asi-v34-market-tape .asi-market-tape-freshness.is-cached,
.asi-v34-market-tape .asi-market-tape-freshness.is-stored { background: #f1f3f6; color: #526173; }
.asi-v34-market-tape .asi-market-tape-item.is-up em { color: #087f5b; }
.asi-v34-market-tape .asi-market-tape-item.is-down em { color: #c63e59; }
.asi-v34-market-tape .asi-market-tape-item.is-flat em { color: #5f6c7c; }
.asi-v34-market-tape .asi-market-tape-source { color: #5f6c7c; font-size: 9px; white-space: nowrap; }
.asi-v34-market-tape .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.asi-v34-market-tape .asi-market-tape:focus-within .asi-market-tape-track,
.asi-v34-market-tape .asi-market-tape-window:hover .asi-market-tape-track { animation-play-state: paused; }
.quote-change { font-size: .64rem; font-weight: 850; font-variant-numeric: tabular-nums; }
.quote-change.positive { color: #078451; }
.quote-change.negative { color: #c83b45; }
.quote-change.neutral { color: #775009; }
@keyframes asiMarketTapeScroll { to { transform: translateX(-50%); } }
@keyframes asiTapePulse { 0% { box-shadow: 0 0 0 0 rgba(31,117,255,.34); } 55%,100% { box-shadow: 0 0 0 7px rgba(31,117,255,0); } }

/* A slim side control opens the whole product without covering the page. */
.product-launcher { position: fixed; z-index: 75; top: 48%; right: 0; }
.product-launcher > summary { display: flex; width: 38px; min-height: 142px; align-items: center; justify-content: center; gap: 9px; border: 1px solid #0b50d5; border-right: 0; border-radius: 14px 0 0 14px; background: linear-gradient(180deg,#0b67fb,#073daf); color: #fff; box-shadow: 0 12px 30px rgba(7,55,160,.25); list-style: none; }
.product-launcher > summary::-webkit-details-marker { display: none; }
.product-launcher > summary span { writing-mode: vertical-rl; transform: rotate(180deg); font-size: .63rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.product-launcher > summary b { font-size: 1rem; transition: transform .2s ease; }
.product-launcher[open] > summary b { transform: rotate(180deg); }
.product-launcher > div { position: fixed; z-index: 1; top: calc(50% - 245px); right: 38px; display: flex; width: 330px; min-height: 490px; flex-direction: column; border: 1px solid var(--line); border-radius: 18px 0 0 18px; background: rgba(255,255,255,.98); padding: 26px; box-shadow: 0 24px 70px rgba(15,35,72,.22); backdrop-filter: blur(18px); }
.product-launcher > div > strong { margin: 12px 0 6px; font-family: Georgia,serif; font-size: 1.45rem; }
.product-launcher > div > p { font-size: .76rem; }
.product-launcher nav { display: flex; flex-direction: column; margin-top: 10px; }
.product-launcher nav a { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line-soft); color: var(--navy); padding: 13px 2px; font-size: .75rem; font-weight: 800; }

/* Controlled home hero and readable quotation */
.home-hero { min-height: 505px; }
.home-hero-art { width: 62%; object-position: 57% center; }
.home-hero::before { background: linear-gradient(90deg,rgba(251,250,247,.995) 0%,rgba(251,250,247,.98) 30%,rgba(251,250,247,.75) 40%,rgba(251,250,247,.09) 54%,rgba(251,250,247,0) 65%); }
.hero-copy { width: 43%; max-width: 540px; margin-left: clamp(38px,5.4vw,88px); padding: 137px 0 30px; }
.hero-copy h1 { max-width: 470px; font-size: clamp(3.3rem,4.2vw,4.45rem); }
.hero-copy > p { max-width: 520px; font-size: .94rem; }
.home-hero blockquote { z-index: 4; right: 3.8vw; bottom: 34px; width: 300px; border: 1px solid rgba(255,255,255,.76); border-radius: 16px; background: rgba(255,255,255,.79); color: #13223f; padding: 20px 22px; text-shadow: none; box-shadow: 0 16px 38px rgba(16,34,68,.13); backdrop-filter: blur(14px); }
.home-hero blockquote b { color: #b7780e; }
.home-hero blockquote cite { color: #52617d; }
.home-snapshot { margin-top: -20px; }

/* Live home market overview */
.home-overview-layout { grid-template-columns: minmax(0,1.7fr) minmax(355px,1fr); }
.home-overview-layout .live-market-card { min-height: 118px; grid-template-columns: 42px minmax(0,1fr); align-content: center; padding: 10px 12px; }
.home-overview-layout .live-market-card .icon { width: 42px; height: 42px; border-radius: 12px; }
.market-card-name { min-width: 0; }
.market-card-quote { grid-column: 2; display: flex; align-items: baseline; gap: 8px; }
.market-card-quote > strong { color: var(--navy); font-size: .88rem; font-variant-numeric: tabular-nums; }
.market-card-quote.pending span { color: #9b6a12; font-size: .6rem; font-weight: 800; }
.quote-source { grid-column: 2; color: #58657d !important; font-size: .58rem !important; text-transform: capitalize; }
.live-dot { background: #18a965; box-shadow: 0 0 0 4px rgba(24,169,101,.11); }
.leading-themes .theme-chips .icon { width: 47px; height: 47px; }
.leading-themes .theme-chips span { font-size: .62rem; }

.home-news-ticker { position: relative; z-index: 3; margin-top: 12px; }
.news-ticker { display: flex; min-height: 42px; align-items: center; overflow: hidden; border: 1px solid #d9e1ee; border-radius: 11px; background: #fff; box-shadow: 0 5px 18px rgba(22,42,82,.05); }
.news-ticker-label { display: flex; min-height: 42px; flex: 0 0 auto; align-items: center; background: #edf3ff; padding: 0 14px; color: #074ccf; font-size: .62rem; font-weight: 900; letter-spacing: .1em; }
.news-ticker-window { min-width: 0; flex: 1; overflow: hidden; }
.news-ticker-track { display: flex; width: max-content; animation: news-ticker-scroll 70s linear infinite; }
.news-ticker-items { display: flex; flex: 0 0 auto; }
.news-ticker-items a { display: flex; min-height: 42px; align-items: center; gap: 9px; border-right: 1px solid var(--line-soft); color: var(--navy); padding: 0 18px; white-space: nowrap; }
.news-ticker-items a b { border-radius: 99px; background: #fff7e7; color: #99620b; padding: 3px 7px; font-size: .55rem; text-transform: uppercase; }
.news-ticker-items a span { max-width: 420px; overflow: hidden; font-size: .67rem; font-weight: 750; text-overflow: ellipsis; }
.news-ticker-items a small { color: var(--muted); font-size: .57rem; }
.news-ticker-open { min-height: 42px; flex: 0 0 auto; border-left: 1px solid var(--line); background: #fff; padding: 0 14px; font-size: .62rem; font-weight: 850; line-height: 42px; white-space: nowrap; }
.news-ticker-loading { gap: 16px; color: var(--muted); font-size: .68rem; }
@keyframes news-ticker-scroll { to { transform: translateX(-50%); } }

/* Opportunity previews now teach and reveal a real public example. */
.teaser-grid { grid-template-columns: 1.08fr 1.25fr repeat(2,1fr) .9fr; gap: 12px; }
.teaser-grid > article { min-height: 245px; border-radius: 16px; padding: 20px; }
.public-opportunity { display: flex; flex-direction: column; border-color: #b9cdef !important; background: linear-gradient(145deg,#fff,#f2f7ff) !important; }
.public-opportunity h3, .honest-preview h3 { margin: 14px 0 8px; font-size: 1.15rem; }
.public-opportunity p, .honest-preview p { font-size: .7rem; line-height: 1.45; }
.public-opportunity dl { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: auto 0 13px; }
.public-opportunity dl div { border-top: 1px solid #dce6f6; padding-top: 9px; }
.public-opportunity dt { color: var(--muted); font-size: .56rem; text-transform: uppercase; }
.public-opportunity dd { font-size: .67rem; font-weight: 800; line-height: 1.32; }
.public-opportunity a { font-size: .68rem; font-weight: 850; }
.honest-preview { display: flex; flex-direction: column; }
.preview-label { margin-top: 10px; color: #9b6a12; font-size: .57rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.honest-preview dl { margin-top: auto; }
.honest-preview a { position: static; margin-top: auto; }
.honest-preview .lock-badge { width: 34px; height: 34px; }
.teaser-cta > strong { font-size: .82rem; }

.intelligence-lock { border-color: #e4c98f; background: linear-gradient(130deg,#fffdf8,#fff8e9); box-shadow: 0 20px 50px rgba(115,77,10,.08); }
.module-grid article { align-items: flex-start; justify-content: flex-start; border-color: #ead7af; background: #fff; padding: 18px 14px; text-align: left; box-shadow: 0 8px 20px rgba(85,63,22,.04); }
.module-grid .icon { width: 40px; height: 40px; }
.module-grid strong { min-height: 34px; font-size: .7rem; line-height: 1.25; }
.module-grid p { font-size: .62rem; line-height: 1.42; }
.mini-lock { top: 12px; right: 12px; }

.steps-row article, .research-card { transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.steps-row article:hover, .research-card:hover { transform: translateY(-4px); border-color: #b7c9e9; box-shadow: 0 18px 40px rgba(22,42,82,.11); }
.research-card { position: relative; overflow: hidden; border-top: 3px solid #1a67ea; background: linear-gradient(180deg,#fff,#fbfcff); }
.research-card::after { content: ""; position: absolute; right: -30px; bottom: -40px; width: 130px; height: 130px; border: 1px solid #d7e2f6; border-radius: 50%; box-shadow: 0 0 0 22px rgba(231,238,250,.55); }
.research-card.featured { border-top-color: #e8b54d; }
.research-card > * { position: relative; z-index: 1; }
.live-news-section { padding-block: 8px 72px; }
.live-news-list { overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: var(--shadow-soft); }
.live-news-list > a { display: grid; min-height: 78px; grid-template-columns: 45px 1fr 24px; align-items: center; gap: 15px; border-bottom: 1px solid var(--line-soft); color: var(--navy); padding: 13px 20px; }
.live-news-list > a:last-child { border-bottom: 0; }
.live-news-list > a:hover { background: #f8faff; }
.news-rank { color: #9aa6ba; font-family: Georgia,serif; font-size: 1.15rem; }
.live-news-list > a > div { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
.news-meta { color: var(--muted); font-size: .59rem; text-transform: capitalize; }
.news-meta b { margin-right: 8px; color: var(--cobalt); text-transform: uppercase; }
.live-news-list > a strong { font-size: .79rem; line-height: 1.35; }
.news-arrow { color: var(--cobalt); }
.live-news-empty { border: 1px dashed #cfd8e7; border-radius: 14px; background: #fff; padding: 25px; text-align: center; }
.live-news-empty button { border: 0; background: transparent; color: var(--cobalt); font-weight: 800; }

/* Markets */
.markets-hero { min-height: 410px; background: #f7f9fd url('../sites-v34/product-shell-bg.webp') center/cover; }
.markets-hero .public-hero-copy { width: 54%; padding-top: 147px; }
.markets-hero .public-hero-copy h1 { font-size: clamp(2.7rem,4vw,4.2rem); }
.market-pulse-card { top: 144px; }
.pulse-reading { display: grid; min-height: 108px; place-items: center; align-content: center; border: 1px solid #d6e0ef; border-radius: 18px; background: linear-gradient(145deg,#fff,#edf4ff); }
.pulse-reading span { color: #0b51d4; font-family: Georgia,serif; font-size: 1.65rem; font-weight: 700; }
.pulse-reading small { color: var(--muted); font-size: .62rem; text-transform: capitalize; }
.market-reading-guide, .sector-reading-guide { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 42px; }
.market-reading-guide article, .sector-reading-guide article { display: flex; min-height: 115px; align-items: center; gap: 17px; border: 1px solid var(--line); border-radius: 15px; background: #fff; padding: 18px; box-shadow: var(--shadow-soft); }
.market-reading-guide article > span, .sector-reading-guide article > span { display: grid; width: 38px; height: 38px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-weight: 900; }
.market-reading-guide article div { display: flex; flex-direction: column; }
.market-reading-guide p, .sector-reading-guide p { margin: 4px 0 0; font-size: .7rem; line-height: 1.4; }
.market-section-heading { margin-bottom: 20px; }
.text-action { font-size: .74rem; font-weight: 850; }
.live-market-grid-large { grid-template-columns: repeat(4,1fr); }
.live-market-grid-large .live-market-card { min-height: 165px; grid-template-columns: 58px 1fr; align-content: center; border-color: #d8e0ec; padding: 21px; box-shadow: 0 7px 20px rgba(22,42,82,.045); }
.live-market-grid-large .icon { width: 58px; height: 58px; border-radius: 16px; }
.live-market-grid-large .market-card-quote { margin-top: 8px; }
.live-market-grid-large .market-card-quote > strong { font-size: 1.08rem; }
.live-market-grid-large .quote-source { margin-top: 5px; }
.market-overview-page > .news-ticker { margin-top: 14px; }
.explanatory-market-grid { grid-template-columns: 1.3fr .8fr .8fr; }
.market-explainer { min-height: 310px; padding: 28px !important; }
.market-explainer > .icon { width: 52px; height: 52px; margin-bottom: 24px; }
.market-explainer h2 { margin: 8px 0 14px; font-family: Georgia,serif; font-size: 1.7rem; }
.market-explainer ul { display: flex; flex-direction: column; gap: 10px; padding-left: 18px; color: var(--muted); font-size: .75rem; }
.featured-explainer { background: linear-gradient(140deg,#071630,#113b7b); }
.featured-explainer h2, .featured-explainer strong { color: #fff; }
.featured-explainer .eyebrow { color: #efc66c; }
.featured-explainer > a { color: #a9c6ff; font-size: .75rem; font-weight: 800; }
.market-gates { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin: 21px 0; }
.market-gates > div { display: flex; min-height: 125px; flex-direction: column; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: rgba(255,255,255,.06); padding: 14px; }
.market-gates b { color: #efc66c; }
.market-gates strong { margin: 8px 0 5px; font-size: .72rem; }
.market-gates span { color: #cbd8ed; font-size: .63rem; }
.market-news-panel .live-news-list { margin: 17px 0; border-radius: 11px; box-shadow: none; }
.market-news-panel .live-news-list > a { min-height: 62px; grid-template-columns: 30px 1fr 18px; padding: 9px; }
.market-news-panel .news-meta { display: none; }
.market-news-panel .live-news-list > a strong { font-size: .67rem; }
.news-panel-link { font-size: .72rem; font-weight: 850; }

/* Sectors — real photographic hero and clear learning hierarchy */
.themes-hero { min-height: 430px; background-image: url('../sites-v34/sectors-real.webp'); background-position: center right; }
.themes-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(251,250,247,.99) 0%,rgba(251,250,247,.93) 44%,rgba(251,250,247,.2) 72%,rgba(251,250,247,0)); }
.themes-hero .public-hero-copy { width: 55%; padding-top: 147px; }
.themes-hero .public-hero-copy h1 { font-size: clamp(2.8rem,4.2vw,4.5rem); }
.sector-reading-guide article { flex-direction: column; align-items: flex-start; }
.sector-dashboard-grid { grid-template-columns: 1fr 1.15fr; }
.simple-sector-chain { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 11px; min-height: 350px; margin: 18px 0; }
.simple-sector-chain > div { display: flex; min-height: 190px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #d9e2f0; border-radius: 16px; background: linear-gradient(145deg,#fff,#f4f8ff); padding: 16px; text-align: center; }
.simple-sector-chain .icon { width: 62px; height: 62px; margin-bottom: 15px; }
.simple-sector-chain strong { font-size: .76rem; }
.simple-sector-chain span { margin-top: 6px; color: var(--muted); font-size: .64rem; }
.simple-sector-chain > b { color: #9db0ce; }
.relationship-panel > .map-disclaimer { position: static; display: block; background: #fff9ed; }
.relationship-panel > a { display: inline-block; margin-top: 12px; font-size: .74rem; font-weight: 850; }
.sector-rank-row { grid-template-columns: 30px 58px 1fr auto; padding: 15px 0; }
.sector-rank-row .icon { width: 56px; height: 56px; }
.sector-rank-row > div { gap: 3px; }
.sector-rank-row strong { font-size: .82rem; }
.sector-rank-row small { font-size: .67rem; line-height: 1.35; }
.sector-rank-row em { color: #435572; font-size: .62rem; font-style: normal; }
.sector-value-grid > article { position: relative; overflow: hidden; min-height: 280px; }
.value-card-number { position: absolute; top: 10px; right: 16px; color: #8794a9; font-family: Georgia,serif; font-size: 3.6rem; }

/* How it works — real mountains, fully opaque cards and a concrete example */
.how-hero { min-height: 790px; background-image: url('../sites-v34/how-it-works-real.webp'); background-position: center; }
.how-title { padding: 145px 24px 29px; }
.how-title h1 { max-width: 1000px; margin: 7px auto 12px; font-size: clamp(2.8rem,4.2vw,4.5rem); }
.how-title p { font-size: .95rem; }
.how-step-grid article { min-height: 320px; border-color: #d5deeb; background: #fff !important; opacity: 1; padding: 22px 20px; box-shadow: 0 14px 34px rgba(25,45,81,.09); }
.step-number { width: auto; height: auto; border-radius: 99px; padding: 6px 10px; font-size: .6rem; }
.how-step-grid .icon { width: 68px; height: 68px; margin: 20px 0 14px; }
.how-step-grid h2 { font-size: 1.38rem; }
.how-step-grid p { font-size: .75rem; line-height: 1.45; }
.how-hero .trust-strip { background: rgba(255,255,255,.96); }
.simple-example { padding-block: 92px 55px; }
.simple-example-copy { max-width: 820px; margin-bottom: 28px; }
.simple-example-copy h2 { margin: 7px 0 12px; }
.simple-example-copy small { color: #8a651e; }
.example-chain { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; align-items: stretch; gap: 11px; }
.example-chain article { min-height: 210px; border: 1px solid var(--line); border-radius: 17px; background: #fff; padding: 23px; box-shadow: var(--shadow-soft); }
.example-chain article > span { color: var(--cobalt); font-size: .62rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.example-chain article strong { display: block; margin: 33px 0 9px; }
.example-chain article p { font-size: .72rem; }
.example-chain > b { align-self: center; color: #9fb0cc; }

/* News and research */
.news-hero { min-height: 390px; background: #f8fafc url('../sites-v34/research-bg.webp') center/cover; }
.news-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(251,250,247,.99),rgba(251,250,247,.91) 53%,rgba(251,250,247,.3)); }
.news-hero .public-hero-copy { width: 59%; padding-top: 147px; }
.news-hero .public-hero-copy h1 { font-size: clamp(2.8rem,4.2vw,4.4rem); }
.news-page-content { padding-block: 30px 90px; }
.news-page-content > .news-ticker { margin-bottom: 38px; }
.news-page-layout { display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 23px; align-items: start; }
.news-page-layout aside { position: sticky; top: 130px; display: flex; flex-direction: column; gap: 17px; }
.public-brief-card, .news-standard { padding: 26px; }
.public-brief-card h2 { margin: 18px 0 12px; font-size: 2rem; }
.public-brief-card p { font-size: .78rem; }
.public-brief-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 20px 0; }
.public-brief-card dl div { border-top: 1px solid var(--line-soft); padding-top: 9px; }
.public-brief-card dt { color: var(--muted); font-size: .6rem; }
.public-brief-card dd { font-size: .7rem; font-weight: 800; }
.public-brief-card .button { width: 100%; }
.news-standard ol { padding: 0; list-style: none; }
.news-standard li { display: grid; grid-template-columns: 30px 1fr; gap: 9px; border-bottom: 1px solid var(--line-soft); padding: 11px 0; }
.news-standard li b { display: grid; width: 26px; height: 26px; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-size: .62rem; }
.news-standard li span { display: flex; flex-direction: column; color: var(--muted); font-size: .65rem; }
.news-standard li strong { color: var(--navy); font-size: .72rem; }
.news-standard > a { font-size: .72rem; font-weight: 850; }
.research-page-content > .news-ticker { margin-bottom: 22px; }
.featured-research { border-radius: 20px; }
.featured-research > div:last-child > a { font-weight: 850; }

/* Market Brief Studio */
.product-chrome { position: sticky; z-index: 45; top: 0; }
.product-topbar { background: rgba(255,255,255,.94); }
.asi-v34-market-tape--product { position: relative; height: var(--ticker-height); }
.asi-v34-market-tape--product .asi-market-tape-inner { padding-inline: 18px; }
.asi-v34-market-tape--product .asi-market-tape-item { padding-inline: 16px; }
.product-sidebar { overflow-y: auto; }
.brief-studio-hero { background: linear-gradient(115deg,rgba(255,255,255,.96),rgba(237,244,255,.88)),url('../sites-v34/research-bg.webp') center/cover; }
.brief-studio-tool { margin-top: 13px; }
.brief-scan-control { display: flex; align-items: center; justify-content: space-between; gap: 35px; border: 1px solid var(--line); border-radius: 18px; background: #fff; padding: 28px; box-shadow: var(--shadow-soft); }
.brief-scan-control > div { max-width: 790px; }
.brief-scan-control h2 { margin: 7px 0 8px; font-size: 2rem; }
.brief-scan-control p { margin: 0; font-size: .78rem; }
.brief-scan-control .button { flex: 0 0 auto; }
.brief-empty-state { display: flex; min-height: 270px; flex-direction: column; align-items: center; justify-content: center; margin-top: 13px; border: 1px dashed #c8d4e6; border-radius: 18px; background: linear-gradient(145deg,#f9fbff,#fffaf1); padding: 35px; text-align: center; }
.brief-empty-state > span { color: #c58b25; font-size: 2.8rem; }
.brief-empty-state strong { margin: 12px 0 6px; }
.brief-empty-state p { max-width: 650px; font-size: .75rem; }
.brief-results { display: grid; grid-template-columns: 1fr 1.2fr; gap: 13px; margin-top: 13px; }
.brief-leader { display: flex; min-height: 350px; flex-direction: column; border: 1px solid #b9cdef; border-radius: 18px; background: linear-gradient(145deg,#071630,#10448f); padding: 28px; box-shadow: var(--shadow); }
.brief-leader h2 { margin: 19px 0 10px; color: #fff; font-size: 2.8rem; }
.brief-leader > p { color: #d8e3f6; font-size: .78rem; }
.brief-leader > div { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-top: auto; }
.brief-leader > div > span { display: flex; min-height: 78px; flex-direction: column; border: 1px solid rgba(255,255,255,.15); border-radius: 11px; background: rgba(255,255,255,.06); padding: 11px; }
.brief-leader small { color: #afc2e1; font-size: .57rem; }
.brief-leader strong { margin-top: 5px; color: #fff; font-size: .72rem; }
.brief-leader > small { margin-top: 13px; }
.brief-candidate-list { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.brief-candidate-list > div { display: grid; grid-template-columns: 1.3fr .8fr 1fr .55fr; align-items: center; gap: 10px; border-bottom: 1px solid var(--line-soft); padding: 14px 17px; font-size: .7rem; }
.brief-candidate-list > div:first-child { background: #f3f6fb; color: var(--muted); font-size: .6rem; text-transform: uppercase; }
.brief-candidate-list > div:last-child { border-bottom: 0; }
.brief-candidate-list span:first-child { display: flex; align-items: center; gap: 9px; font-weight: 800; }
.brief-candidate-list span:first-child b { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--cobalt); font-size: .6rem; }
.brief-gates { margin-top: 45px; }
.brief-gates > div:last-child { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.brief-gates article { position: relative; min-height: 225px; padding: 22px; }
.brief-gates article > span { position: absolute; top: 13px; right: 15px; color: #dce4f0; font-family: Georgia,serif; font-size: 2.1rem; }
.brief-gates .icon { width: 48px; height: 48px; }
.brief-gates h3 { margin: 28px 0 9px; font-size: 1.2rem; }
.brief-gates p { font-size: .72rem; }
.brief-publish-boundary { display: flex; align-items: center; justify-content: space-between; gap: 35px; margin: 45px 0 90px; padding: 30px; }
.brief-publish-boundary > div:first-child { max-width: 800px; }
.brief-publish-boundary h2 { margin: 7px 0 8px; font-size: 2rem; }
.brief-publish-boundary p { margin: 0; font-size: .78rem; }
.brief-publish-boundary > div:last-child { display: flex; flex-direction: column; gap: 12px; text-align: center; }
.brief-publish-boundary > div:last-child > a:last-child { font-size: .68rem; font-weight: 800; }

/* Pricing cards begin below the hero copy instead of colliding with it. */
.pricing-hero { min-height: 510px; }
.pricing-hero .public-hero-copy { width: 58%; padding-top: 148px; padding-bottom: 86px; }
.pricing-content { margin-top: -38px; }
.pricing-grid { align-items: start; }

@media (max-width: 1180px) {
  .desktop-nav { display: none; }
  .site-header { grid-template-columns: 1fr auto auto; }
  .mobile-menu { display: block; }
  .home-hero blockquote { display: none; }
  .home-hero-art { width: 70%; }
  .hero-copy { width: 56%; }
  .teaser-grid { grid-template-columns: repeat(2,1fr); }
  .teaser-grid > article:last-child { min-height: 210px; }
  .explanatory-market-grid { grid-template-columns: 1fr 1fr; }
  .featured-explainer { grid-column: 1 / -1; }
  .news-page-layout { grid-template-columns: minmax(0,1fr) 325px; }
  .sector-dashboard-grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  :root { --header-height: 70px; }
  .header-actions { display: none; }
  .site-header { grid-template-columns: 1fr auto; }
  .market-ticker .ticker-open { display: none; }
  .home-hero { min-height: 595px; }
  .home-hero-art { width: 79%; opacity: .78; }
  .home-hero::before { background: linear-gradient(90deg,rgba(251,250,247,.99),rgba(251,250,247,.94) 54%,rgba(251,250,247,.28)); }
  .hero-copy { width: 72%; margin-left: 25px; padding-top: 141px; }
  .home-overview-layout { grid-template-columns: 1fr; }
  .leading-themes { border-top: 1px solid var(--line); border-left: 0; padding-top: 15px; }
  .live-market-grid-large { grid-template-columns: 1fr 1fr; }
  .markets-hero { min-height: 535px; margin-bottom: 145px; overflow: visible; }
  .markets-hero .public-hero-copy { width: 84%; }
  .market-pulse-card { position: relative; top: auto; right: auto; width: calc(100% - 30px); margin: 0 auto; }
  .market-reading-guide, .sector-reading-guide { grid-template-columns: 1fr; }
  .news-page-layout { grid-template-columns: 1fr; }
  .news-page-layout aside { position: static; display: grid; grid-template-columns: 1fr 1fr; }
  .themes-hero .public-hero-copy, .news-hero .public-hero-copy { width: 78%; }
  .simple-sector-chain { grid-template-columns: 1fr; }
  .simple-sector-chain > b { transform: rotate(90deg); }
  .how-step-grid { grid-template-columns: 1fr 1fr; }
  .how-hero { min-height: 1140px; }
  .example-chain { grid-template-columns: 1fr 1fr; }
  .example-chain > b { display: none; }
  .brief-results { grid-template-columns: 1fr; }
  .brief-gates > div:last-child { grid-template-columns: 1fr 1fr; }
  .brief-publish-boundary { align-items: flex-start; flex-direction: column; }
  .pricing-hero .public-hero-copy { width: 78%; }
}

@media (max-width: 620px) {
  :root { --header-height: 66px; --ticker-height: 34px; }
  .site-header { min-height: var(--header-height); height: var(--header-height); padding: 10px 14px; }
  .brand { width: 174px; }
  .mobile-menu > summary { width: 38px; height: 38px; }
  .ticker-label, .ticker-open { display: none; }
  .ticker-item { height: 34px; padding: 0 14px; }
  .product-launcher { top: auto; right: 10px; bottom: 84px; }
  .product-launcher > summary { width: 44px; min-height: 44px; border: 1px solid #0b50d5; border-radius: 50%; }
  .product-launcher > summary span { display: none; }
  .product-launcher > div { top: auto; right: 10px; bottom: 132px; width: calc(100% - 20px); min-height: 0; max-height: 68vh; overflow-y: auto; border-radius: 18px; }
  .home-hero { min-height: 610px; }
  .home-hero-art { width: 100%; opacity: .62; }
  .home-hero::before { background: linear-gradient(90deg,rgba(251,250,247,.985),rgba(251,250,247,.91) 70%,rgba(251,250,247,.24)); }
  .hero-copy { width: calc(100% - 32px); margin-left: 16px; padding-top: 129px; }
  .hero-copy h1 { font-size: 3.2rem; }
  .home-overview-layout .market-card-grid { grid-template-columns: 1fr; }
  .home-overview-layout .live-market-card { grid-template-columns: 44px 1fr auto; min-height: 86px; border-right: 0; }
  .home-overview-layout .market-card-quote { grid-column: 3; grid-row: 1; flex-direction: column; align-items: flex-end; gap: 1px; }
  .home-overview-layout .quote-source { display: none; }
  .leading-themes .theme-chips { grid-template-columns: repeat(2,1fr); }
  .teaser-grid, .module-grid, .explanatory-market-grid { grid-template-columns: 1fr; }
  .featured-explainer { grid-column: auto; }
  .live-market-grid-large { grid-template-columns: 1fr; }
  .live-market-grid-large .live-market-card { min-height: 135px; }
  .market-gates { grid-template-columns: 1fr; }
  .market-reading-guide article, .sector-reading-guide article { min-height: 95px; }
  .themes-hero, .news-hero { min-height: 520px; }
  .themes-hero .public-hero-copy, .news-hero .public-hero-copy { width: 94%; padding-top: 130px; }
  .themes-hero::after { background: linear-gradient(90deg,rgba(251,250,247,.99),rgba(251,250,247,.88) 78%,rgba(251,250,247,.38)); }
  .sector-rank-row { grid-template-columns: 24px 50px 1fr; }
  .sector-rank-row .icon { width: 48px; height: 48px; }
  .sector-rank-row > i { grid-column: 3; justify-self: start; }
  .news-page-layout aside { display: flex; }
  .live-news-list > a { grid-template-columns: 32px 1fr 18px; padding: 11px 12px; }
  .news-meta { line-height: 1.4; }
  .how-step-grid { grid-template-columns: 1fr; }
  .how-hero { min-height: 1830px; }
  .how-title { padding-top: 130px; }
  .example-chain { grid-template-columns: 1fr; }
  .brief-scan-control { align-items: stretch; flex-direction: column; padding: 22px; }
  .brief-results { min-width: 0; }
  .brief-leader > div { grid-template-columns: 1fr; }
  .brief-candidate-list { overflow-x: auto; }
  .brief-candidate-list > div { min-width: 650px; }
  .brief-gates > div:last-child { grid-template-columns: 1fr; }
  .brief-publish-boundary > div:last-child { width: 100%; }
  .pricing-hero { min-height: 570px; }
  .pricing-hero .public-hero-copy { width: 94%; padding-top: 130px; }
  .pricing-content { margin-top: -24px; }
}
/* WordPress integration layer. The plugin owns the complete v34 surface
   while the active theme remains installed only as the template bootstrap. */
body.asi-sites-v34 {
  margin: 0 !important;
  overflow-x: hidden;
  background: var(--pearl) !important;
}
body.asi-sites-v34 .asi-shell-header,
body.asi-sites-v34 .asi-shell-footer,
body.asi-sites-v34 .asi-shell > .screen-reader-text { display: none !important; }
body.asi-sites-v34 .asi-shell,
body.asi-sites-v34 .asi-shell-main,
body.asi-sites-v34 .asi-shell-managed-page,
body.asi-sites-v34 .asi-shell-content {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
body.asi-sites-v34 .asi-v34-root { width: 100%; max-width: none; overflow: clip; }
body.asi-sites-v34 .asi-v34-root > main { margin: 0; padding: 0; }
body.asi-sites-v34.admin-bar .site-header { top: 32px; }
body.asi-sites-v34.admin-bar .asi-v34-market-tape--public { top: calc(var(--header-height) + 32px); }
body.asi-sites-v34.admin-bar .product-sidebar { top: 32px; }
/* The requested product launcher lives on the left and stays away from browser scrollbars. */
.product-launcher { right: auto; left: 0; }
.product-launcher > summary { border-right: 1px solid #0b50d5; border-left: 0; border-radius: 0 14px 14px 0; }
.product-launcher > summary span { transform: none; }
.product-launcher > div { right: auto; left: 38px; border-radius: 0 18px 18px 0; }

.access-form .access-check { display: flex; flex-direction: row; align-items: flex-start; gap: 9px; font-weight: 650; }
.access-form .access-check input { width: 17px; min-height: 17px; flex: 0 0 auto; margin-top: 2px; }
.access-form p { margin: 0; text-align: center; }
.access-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.v34-checkout-form { margin: 0; }
.v34-checkout-form .button { width: 100%; }
.ranking-boundary { margin-top: 12px; border-left: 3px solid var(--gold-2); background: var(--gold-soft); padding: 13px 16px; color: #6b5a3c; font-size: .68rem; line-height: 1.5; }
.ranking-boundary strong { color: var(--navy); }
.table-row[hidden], [hidden] { display: none !important; }
.table-row > strong { color: var(--cobalt-dark); font-size: .98rem; }
.today-change-list { display: flex; flex-direction: column; margin-top: 18px; }
.today-change-list a { display: grid; grid-template-columns: auto 1fr; gap: 5px 13px; border-top: 1px solid var(--line-soft); padding: 16px 0; }
.today-change-list a > small { grid-column: 2; color: var(--muted); }
.alert-record { display: flex; min-height: 92px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 20px; }
.alert-record > span { display: flex; flex-direction: column; gap: 5px; }
.alert-record small { color: var(--muted); }
.ledger-record { display: grid; grid-template-columns: .7fr 1.5fr .6fr 1fr .7fr; align-items: center; gap: 20px; border-bottom: 1px solid var(--line-soft); color: var(--navy); padding: 15px 0; font-size: .72rem; }
.onboarding-live-form { max-width: 850px; margin: 24px auto 0; padding: 30px; }
.onboarding-live-form fieldset { border: 1px solid var(--line); border-radius: 14px; padding: 18px; }
.onboarding-live-form legend { color: var(--navy); font-weight: 850; }
.onboarding-live-form select { min-height: 48px; border: 1px solid #cfd8e6; border-radius: 9px; background: #fff; padding: 0 13px; }
.contact-live-form { border: 1px solid var(--line); border-radius: 18px; background: #fff; padding: 28px !important; box-shadow: var(--shadow-soft); }
.contact-live-form .asi-page-hero, .contact-live-form .asi-contact-aside { display: none; }
.contact-live-form .asi-contact-page, .contact-live-form .asi-section, .contact-live-form .asi-contact-layout { margin: 0; padding: 0; max-width: none; background: transparent; }
.contact-live-form form { display: grid; gap: 16px; }
.contact-live-form label { display: grid; gap: 7px; color: var(--navy); font-size: .72rem; font-weight: 800; }
.contact-live-form .asi-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.contact-live-form input, .contact-live-form select, .contact-live-form textarea { width: 100%; border: 1px solid #cfd8e6; border-radius: 9px; background: #fff; padding: 12px 13px; }
.contact-live-form .asi-consent { display: flex; flex-direction: row; align-items: flex-start; gap: 9px; font-weight: 650; }
.contact-live-form .asi-consent input { width: 17px; min-height: 17px; flex: 0 0 auto; margin-top: 2px; padding: 0; }
.contact-live-form .asi-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.contact-live-form .asi-form-notice { margin-bottom: 15px; border-radius: 10px; background: var(--gold-soft); padding: 12px 14px; color: #6b5a3c; font-size: .75rem; }
.contact-live-form button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; border: 1px solid var(--cobalt); border-radius: 12px; background: var(--cobalt); color: #fff; padding: 0 24px; font-weight: 800; }
.watchlist-create-form { display: grid; grid-template-columns: minmax(220px,1fr) auto; align-items: end; gap: 12px; margin: 18px 0; border: 1px solid var(--line); border-radius: 13px; background: var(--pearl); padding: 16px; }
.watchlist-create-form label { display: grid; gap: 7px; color: var(--navy); font-size: .7rem; font-weight: 800; }
.watchlist-create-form input { width: 100%; min-height: 44px; border: 1px solid #cfd8e6; border-radius: 9px; background: #fff; padding: 0 13px; }
.watchlist-create-form [data-asi-form-status] { grid-column: 1 / -1; min-height: 1em; color: var(--muted); font-size: .68rem; }
.asi-v34-thesis-actions { display: grid; gap: 9px; margin-top: 14px; }
.asi-v34-thesis-actions [data-asi-action-status] { min-height: 1em; color: var(--muted); font-size: .66rem; line-height: 1.45; }

@media (max-width: 782px) {
  body.asi-sites-v34.admin-bar .site-header { top: 46px; }
  body.asi-sites-v34.admin-bar .asi-v34-market-tape--public { top: calc(var(--header-height) + 46px); }
  body.asi-sites-v34.admin-bar .product-sidebar { top: 46px; }
  .product-launcher { right: auto; left: 10px; }
  .contact-live-form .asi-form-grid { grid-template-columns: 1fr; }
  .product-launcher > summary { width: 44px; min-height: 44px; border: 1px solid #0b50d5; border-radius: 50%; }
  .product-launcher > summary span { display: none; }
  .product-launcher > div { top: auto; right: auto; bottom: 132px; left: 10px; width: calc(100% - 20px); min-height: 0; max-height: 68vh; overflow-y: auto; border-radius: 18px; }
  .watchlist-create-form { grid-template-columns: 1fr; }
  .table-row > strong { padding-left: 54px; }
  .table-row > strong::before { content: "Technical: "; color: var(--muted); font-size: .62rem; font-weight: 700; }
  .table-row > span:nth-child(4)::before { content: "Fundamental: "; }
  .ledger-record { grid-template-columns: 1fr; gap: 7px; }
}

@media (max-width: 900px) {
  .ledger-readiness-grid { grid-template-columns: 1fr 1fr; }
  .ledger-readiness-grid article:nth-child(2) { border-right: 0; }
  .ledger-readiness-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 620px) {
  .asi-v34-market-tape .asi-market-tape-inner { grid-template-columns: auto minmax(0,1fr); gap: 7px; padding-inline: 10px; }
  .asi-v34-market-tape .asi-market-tape-source { display: none; }
  .asi-v34-market-tape .asi-market-tape-label { padding-right: 8px; }
  .asi-v34-market-tape .asi-market-tape-label span { font-size: 0; }
  .asi-v34-market-tape .asi-market-tape-label span::after { content: "PRICE"; font-size: 9px; }
  .asi-v34-market-tape .asi-market-tape-item { padding-inline: 13px; }
  .proof-ready-head { grid-template-columns: 42px 1fr; }
  .proof-ready-head > .state { grid-column: 2; justify-self: start; }
  .ledger-readiness-grid { grid-template-columns: 1fr; }
  .ledger-readiness-grid article { min-height: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .ledger-readiness-grid article:last-child { border-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .asi-v34-market-tape .asi-market-tape-label i,
  .asi-v34-market-tape .asi-market-tape-track { animation: none !important; }
  .asi-v34-market-tape .asi-market-tape-window { overflow-x: auto; -webkit-mask-image: none; mask-image: none; scrollbar-width: thin; }
  .asi-v34-market-tape .asi-market-tape-group[aria-hidden="true"] { display: none; }
}


/* 34.2.0 header, ticker and research-card refinements */
.site-header > * { min-width: 0; }
.site-header {
  grid-template-columns: auto minmax(0,1fr) auto;
  column-gap: clamp(20px, 2.3vw, 34px);
}
.desktop-nav {
  min-width: 0;
  justify-content: center;
}
.header-actions {
  justify-self: end;
  align-self: center;
}
.header-actions .text-link {
  display: inline-flex;
  align-items: center;
}
.asi-v34-market-tape .asi-market-tape-inner {
  align-items: stretch;
}
.asi-v34-market-tape .asi-market-tape-label,
.asi-v34-market-tape .asi-market-tape-item {
  min-height: var(--ticker-height);
  align-items: center;
}
.asi-v34-market-tape .asi-market-tape-item {
  gap: 10px;
}
.research-card-visual {
  background-size: cover;
  background-position: center;
}
.research-card-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.02) 35%, rgba(255,255,255,.08) 100%);
}
.research-card.featured .research-card-visual::before {
  background: linear-gradient(180deg, rgba(7,19,49,.16) 0%, rgba(7,19,49,.08) 45%, rgba(7,19,49,.18) 100%);
}
@media (min-width: 901px) {
  .mobile-menu { display: none !important; }
}


/* 34.2.1 hard fix: keep header actions inside the header row */
@media (min-width: 901px) {
  body.asi-sites-v34 .site-header,
  body.asi-sites-v34 .home-hero .site-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 28px !important;
    grid-template-columns: none !important;
    flex-wrap: nowrap !important;
  }
  body.asi-sites-v34 .site-header > .brand-mark {
    flex: 0 0 auto;
  }
  body.asi-sites-v34 .desktop-nav {
    display: flex !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(19px, 2vw, 34px) !important;
  }
  body.asi-sites-v34 .header-actions {
    display: flex !important;
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 0 0 0 auto !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important;
    white-space: nowrap !important;
    z-index: 3 !important;
  }
  body.asi-sites-v34 .header-actions .text-link,
  body.asi-sites-v34 .header-actions .button,
  body.asi-sites-v34 .header-actions .button.button-small {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    white-space: nowrap !important;
  }
}
