/* September 2026: evidence-led marketing revision. */
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
:focus-visible { outline: 3px solid #6550a0; outline-offset: 5px; }
.hero-note { font-size: 14px; line-height: 1.7; color: #465563; }
.hero-note a { display: block; text-decoration: underline; text-underline-offset: 4px; }
.evidence-card { border: 1px solid #d7dce4; border-radius: 24px; padding: 32px; background: #F7F3FF; box-shadow: 0 16px 48px #1d3b5810; scroll-margin-top: 110px; }
.example-label { font-size: 13px; line-height: 1.5; color: #56526d; }
.evidence-card h2 { font-family: 'Archivo',serif; font-size: clamp(28px,2.6vw,38px); font-weight: 400; color: var(--navy); line-height: 1.15; margin: 20px 0 24px; }
.evidence-step { display: flex; gap: 18px; border-top: 1px solid #d7dce4; padding: 18px 0; }
.evidence-step > span { color: var(--navy); font-size: 14px; padding-top: 3px; }
.evidence-step h3 { font-size: 17px; margin: 0 0 7px; color: var(--navy); }
.evidence-step p,.evidence-detail p { font-size: 16px; line-height: 1.5; margin: 0; color: #465563; }
.evidence-detail { border: 1px solid #b6accd; border-radius: 12px; background: white; }
.evidence-detail summary { cursor: pointer; padding: 16px; font-size: 16px; font-weight: 600; color: var(--navy); }
.evidence-detail summary span { float: right; }
.evidence-detail > div { padding: 0 18px 18px; }
.evidence-detail p + p { margin-top: 14px; }
.evidence-note { font-size: 14px; line-height: 1.5; margin: 18px 0 0; color: #56526d; }
.audience-paths { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; padding-top: 36px; padding-bottom: 60px; }
.audience-paths a { border-top: 2px solid #cdc3df; padding-top: 22px; color: var(--navy); text-decoration: none; }
.audience-paths a:hover h2 { color: var(--navy); }
.audience-paths span { font-size: 14px; color: var(--navy); }
.audience-paths h2 { font: 400 27px/1.2 'Archivo',serif; margin: 12px 0; }
.audience-paths p { font-size: 16px; line-height: 1.5; }
.pricing-grid { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 1320px; }
.pricing-card-inner { padding: 48px 28px 32px; }
.pricing-featured-badge { white-space: nowrap; }
.pricing-footnote { font-size: 15px; line-height: 1.7; max-width: 1000px; }
.trial-panel { border-top: 1px solid #d7dce4; max-width: 1000px; margin: 32px auto 0; padding-top: 32px; }
.trial-panel h2 { font: 400 30px 'Archivo',serif; margin-bottom: 16px; }
.trial-panel p { font-size: 16px; line-height: 1.7; margin-bottom: 20px; }
.reading-guide { max-width: 900px; margin: auto; scroll-margin-top: 80px; }
.reading-guide p { font-size: 18px; line-height: 1.75; margin-bottom: 22px; }
.reading-guide a { font-size: 16px; text-decoration: underline; text-underline-offset: 4px; }
.guide-index .paper { display: block; text-decoration: none; color: var(--navy); }
.guide-index .paper p { font-size: 16px; }
@media(max-width:1100px) { .evidence-hero .hero-content { gap: 32px; padding: 140px 32px 56px; } .pricing-grid { grid-template-columns: 1fr; max-width: 650px; } }
@media(max-width:760px) { .evidence-hero .hero-content { grid-template-columns: 1fr; padding: 124px 24px 40px; } .evidence-hero .hero-headline { font-size: clamp(38px,8.5vw,54px); } .evidence-card { padding: 24px; } .audience-paths { grid-template-columns: 1fr; } .hero-actions .btn { white-space: normal; } .reading-guide p { font-size: 17px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } }
.access-note { font-size: 15px; line-height: 1.65; margin-top: 20px; color: #465563; }

/* Preserve the original homepage hero photography and veil. */
.brand-hero .hero-content { padding: 190px 48px 88px; }
.brand-hero .hero-copy-inner { max-width: 660px; }
.brand-hero .hero-actions { margin-bottom: 24px; }
.evidence-walkthrough { max-width: 900px; margin: 0 auto; padding-top: 56px; padding-bottom: 24px; }
@media(max-width:1024px) { .brand-hero .hero-content { padding: 140px 32px 80px; } }
@media(max-width:640px) { .brand-hero .hero-content { padding: 120px 24px 60px; } }
/* The Flow trial is the main self-serve path on desktop and mobile. */
.mobile-account-link { display: none; }
.trial-terms,.final-cta .trial-terms { font-size: 14px; line-height: 1.65; color: #465563; margin: 14px 0 18px; max-width: none; }
.brand-hero .hero-note { margin-top: 10px; }
.brand-hero .hero-note a { display: inline; margin-left: 4px; }
.trial-workflow { background: #F7F3FF; }
.trial-workflow-heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: 60px; align-items: end; }
.trial-workflow-heading .section-intro { margin-bottom: 32px; }
.trial-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin: 32px 0; }
.trial-steps article { border-top: 2px solid #b6accd; padding-top: 24px; }
.trial-day { font-size: 14px; color: var(--navy); }
.trial-steps h3 { font: 400 29px/1.2 'Archivo',serif; color: var(--navy); margin: 14px 0; }
.trial-steps p { font-size: 17px; line-height: 1.65; color: #465563; }
.trial-steps .trial-outcome { font-size: 15px; color: var(--navy); margin-top: 18px; }
.trial-workflow-footer { display: flex; align-items: center; justify-content: space-between; gap: 32px; border-top: 1px solid #d7dce4; padding-top: 28px; }
.trial-workflow-footer > p { font-size: 16px; line-height: 1.7; }
.trial-workflow-footer a:not(.btn),.trial-panel > a { text-decoration: underline; text-underline-offset: 4px; }
@media(max-width:1280px) { .nav-inner { gap: 20px; } .nav-cta > .nav-demo { display:none; } }
@media(max-width:1024px) {
 .nav-cta { display:flex; margin-left:auto; }
 .nav-cta > .nav-signin,.nav-cta > .nav-demo { display:none; }
 .nav-cta > .nav-trial { display:inline-flex; }
 .mobile-account-link { display:list-item; }
 /* Keep an expanded mobile submenu visible even while its parent is hovered. */
 .nav-links > li.dropdown-open:hover .nav-dropdown { visibility:visible; }
 .trial-workflow-heading { grid-template-columns:1fr; gap:0; }
}
@media(max-width:760px) {
 .trial-steps { grid-template-columns:1fr; gap:24px; }
 .trial-workflow-footer { flex-direction:column; align-items:flex-start; gap:12px; }
}
@media(max-width:640px) {
 .nav-inner { padding:12px; gap:10px; }
 .nav-logo img { height:22px; }
 .nav-cta { gap:0; }
 .nav-cta .nav-trial { padding:10px 12px; font-size:14px; }
 .nav-hamburger { flex-shrink:0; }
 .trial-terms,.final-cta .trial-terms { font-size:14px; }
}
/* Shared spacing scale and current positioning. */
:root { --section-space: clamp(48px,5.2vw,80px); --page-gutter: clamp(24px,3.4vw,48px); }
section.block { padding-top:var(--section-space); padding-bottom:var(--section-space); padding-left:var(--page-gutter); padding-right:var(--page-gutter); }
.page-header { padding:152px var(--page-gutter) 64px; }
.page-header .page-header-inner { max-width:1280px; margin:0 auto; gap:24px; }
.page-header .page-header-inner > div { min-width:0; }
.page-header .page-header-inner:has(.page-header-actions) > div { max-width:660px; }
.page-pricing .page-header-inner,.page-research-library .page-header-inner,.page-companion .page-header-inner { max-width:900px; }
.page-companion .page-header .page-header-inner > div { max-width:none; }
.page-header h1 { font-size:clamp(38px,4.5vw,60px); line-height:1.08; margin:0 0 24px; }
.page-header p.page-intro { font-size:19px; line-height:1.6; margin:0 0 24px; max-width:620px; }
.page-header .page-header-actions { margin:0 0 16px; gap:12px; }
.page-header p.trial-terms,.page-header p.access-note { font-size:14px; line-height:1.6; margin:0; }
.page-header .page-tag { margin-bottom:24px; }
.page-pricing .page-header p,.page-research-library .page-header p,.page-companion .page-header p { margin-left:auto; margin-right:auto; }
.page-header-dark p.page-intro,.page-header-dark p.access-note { color:#e3e8ef; }
.brand-hero,.brand-hero .hero-content { min-height:0; }
.brand-hero .hero-content { max-width:1376px; padding:164px var(--page-gutter) 64px; }
.brand-hero .hero-headline { font-size:clamp(42px,4.8vw,66px); line-height:1.06; margin-bottom:24px; }
.brand-hero .hero-eyebrow { font-size:13px; letter-spacing:.12em; margin-bottom:24px; }
.brand-hero .hero-sub { font-size:19px; line-height:1.6; margin-bottom:28px; max-width:540px; }
.brand-hero .hero-copy-inner { max-width:620px; }
.brand-hero .hero-actions { margin-bottom:16px; }
.brand-hero .trial-terms { margin:0 0 12px; }
.brand-hero .hero-note { margin:0; }
h2.section-title { margin-bottom:24px; }
.section-intro { line-height:1.65; }
.feature-grid { margin-bottom:64px; gap:48px; }
.final-cta { padding:72px var(--page-gutter); }
.final-cta h2 { margin-bottom:24px; }
.final-cta p { margin-bottom:24px; }
.final-cta-actions { gap:12px; }
section.evidence-walkthrough { padding-top:40px; padding-bottom:40px; }
section.audience-paths { padding-top:32px; padding-bottom:48px; }
section.reading-guide { padding-top:40px; padding-bottom:40px; }
section.companion-bridge { display:grid; grid-template-columns:1.15fr 1fr; gap:56px; align-items:center; background:#F7F3FF; }
.companion-bridge > div { max-width:620px; }
.companion-bridge > div:first-child { justify-self:end; }
.companion-bridge p { font-size:17px; line-height:1.65; margin:0 0 24px; }
.companion-bridge .access-note { font-size:14px; margin:16px 0 0; }
.companion-summary { background:#fff; border:1px solid #d7dce4; border-radius:20px; padding:32px; }
.companion-summary h3 { font:400 30px/1.2 'Archivo',serif; color:var(--navy); margin:12px 0 20px; }
.companion-summary ul { padding-left:20px; margin:0 0 20px; }
.companion-summary li { font-size:17px; line-height:1.6; padding:0 0 12px 4px; }
.companion-summary p:last-child { margin:0; font-size:15px; }
section.companion-pricing { background:#F7F3FF; }
.page-companion .page-header-inner { display:block; text-align:center; }
.page-companion .page-header-actions { justify-content:center; }
@media(max-width:1024px) {
 .page-header { padding-top:128px; padding-bottom:48px; }
 .page-header .page-header-inner,.page-header .page-header-inner:has(.page-header-actions) > div { max-width:760px; margin-left:auto; margin-right:auto; text-align:center; }
 .page-header p.page-intro { margin-left:auto; margin-right:auto; }
 .page-header .page-header-actions { justify-content:center; }
 .brand-hero .hero-content { padding-top:132px; }
 section.companion-bridge { gap:32px; }
}
@media(max-width:760px) {
 section.companion-bridge { grid-template-columns:1fr; }
 .companion-bridge > div { max-width:none; }
 .companion-bridge > div:first-child { justify-self:stretch; }
 .brand-hero .hero-content { padding-top:112px; padding-bottom:48px; }
 .page-header { padding-top:112px; }
 .feature-grid { margin-bottom:40px; gap:28px; }
 .companion-summary { padding:24px; }
 .page-header h1 br { display:none; }
 .nav-links > li.dropdown-open .nav-dropdown { max-height:70vh; overflow-y:auto; }
}
@media(min-width:1025px) {
 .page-solutions-brokers .page-header-inner > div,.page-solutions-compliance .page-header-inner > div { max-width:620px; margin-left:auto; }
 .page-solutions-brokers .page-header-inner,.page-solutions-compliance .page-header-inner { display:block; }
}
.page-research .page-header-inner { max-width:900px; }
.page-research .page-header .page-header-inner > div { max-width:none; }
.page-research .page-header p.page-intro { margin-left:auto; margin-right:auto; }
.page-header-dark h1 { color:#fff; }

/* Keep the prior hero while retaining the refreshed sections below. */
.brand-hero,.brand-hero .hero-content { min-height:100vh; }
.brand-hero .hero-content { max-width:1440px; padding:190px 48px 88px; }
.brand-hero .hero-copy-inner { max-width:660px; }
.brand-hero .hero-headline { font-size:clamp(44px,6vw,76px); line-height:1.04; margin-bottom:32px; }
.brand-hero .hero-eyebrow { font-size:12px; letter-spacing:.22em; margin-bottom:32px; }
.brand-hero .hero-sub { font-size:20px; line-height:1.55; max-width:560px; margin-bottom:44px; }
.brand-hero .hero-actions { margin-bottom:24px; }
.brand-hero .trial-terms { margin:14px 0 18px; }
.brand-hero .hero-note { margin-top:10px; }
@media(max-width:1024px) { .brand-hero .hero-content { padding:140px 32px 80px; } }
@media(max-width:640px) { .brand-hero .hero-content { padding:120px 24px 60px; } }
