/* AI Copilot marketing surfaces. Presentation only; the preview is static HTML. */
.ai-home-spotlight { background: radial-gradient(circle at 88% 12%, #4045e8 0, #1d2b64 30%, #101a32 72%); color: #fff; padding: 92px 0; overflow: hidden; }
.ai-home-grid { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); align-items: center; gap: clamp(32px, 5vw, 76px); }
.ai-home-copy, .ai-page-hero-grid > div { min-width: 0; }
.ai-home-copy .eyebrow { color: #ffb477; margin-bottom: 22px; }
.ai-home-copy h2 { font-size: clamp(39px, 4vw, 60px); line-height: 1.08; color: #fff; }
.ai-home-copy h2 span { color: #ffc693; }
.ai-lead { font-size: 18px; line-height: 1.72; }
.ai-home-copy .ai-lead { color: #e0e7f7; margin-top: 25px; }
.ai-support { font-size: 15px; line-height: 1.65; font-weight: 600; }
.ai-home-copy .ai-support { color: #c6d5ff; margin-top: 23px; }
.ai-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.ai-actions .button { font-size: 14px; white-space: normal; text-align: center; }
.ai-home-copy .ai-actions .secondary { color: #101a32; }
.ai-preview-note { margin-top: 30px; border-top: 1px solid #ffffff3d; padding-top: 22px; }
.ai-preview-note span { display: inline-block; border: 1px solid #ffbb87; background: #ffb47724; color: #ffca9e; border-radius: 999px; padding: 5px 12px; font-size: 12px; font-weight: 700; letter-spacing: .05em; }
.ai-preview-note p { color: #d3dcf0; font-size: 14px; line-height: 1.6; margin-top: 11px; }

.ai-demo { min-width: 0; width: 100%; overflow: hidden; color: #17213a; background: #fff; border: 1px solid #d9e2f2; border-radius: 20px; box-shadow: 0 25px 65px #08112d38; }
.ai-demo-bar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; background: #f4f6fc; border-bottom: 1px solid #dfe5f0; padding: 13px 18px; }
.ai-demo-brand { display: inline-flex; align-items: center; gap: 8px; color: #17213a; font-size: 14px; font-weight: 700; }
.ai-demo-brand .icon { width: 17px; height: 17px; color: var(--purple); }
.ai-demo-local { font-size: 12px; font-weight: 700; letter-spacing: .08em; color: #52607a; }
.ai-demo-body { display: grid; grid-template-columns: minmax(160px, .38fr) minmax(0, 1fr); }
.ai-demo-side { min-width: 0; background: #f8f9fe; border-right: 1px solid #e3e8f3; padding: 18px 13px; }
.ai-demo-side > p:first-child { color: #5d6880; font-size: 12px; font-weight: 750; letter-spacing: .08em; margin: 0 6px 13px; }
.ai-demo-choices { display: none; flex-direction: column; gap: 7px; }
.ai-demo.is-ready .ai-demo-choices { display: flex; }
.ai-demo-choices button { width: 100%; border: 1px solid transparent; border-radius: 10px; background: transparent; color: #34415b; padding: 10px 9px; text-align: left; font-size: 13px; font-weight: 600; line-height: 1.45; }
.ai-demo-choices button span { display: block; color: #697892; font-size: 12px; letter-spacing: .08em; margin-bottom: 3px; }
.ai-demo-choices button:hover { background: #ebefff; }
.ai-demo-choices button[aria-pressed="true"] { background: #e7ebff; border-color: #b9c5ff; color: #262da2; }
.ai-demo-noscript { font-size: 14px; line-height: 1.55; color: #52607a; }
.ai-demo-results { min-width: 0; padding: 20px 21px 17px; }
.ai-demo-panel:not(.is-selected) { display: none; }
.ai-demo-panel-top { display: flex; justify-content: space-between; align-items: center; gap: 8px 14px; flex-wrap: wrap; }
.ai-demo-state { display: inline-block; background: #edf1ff; color: #2e37af; border-radius: 999px; font-size: 12px; font-weight: 750; padding: 5px 10px; }
.ai-demo-asof { font-size: 12px; color: #5c6880; }
.ai-demo-prompt-label { font-size: 12px; font-weight: 750; letter-spacing: .09em; color: #5867a2; margin-top: 20px; }
.ai-demo-panel h3 { font-size: clamp(19px, 1.7vw, 25px); line-height: 1.25; color: #17213a; margin-top: 6px; }
.ai-demo-context { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 19px; }
.ai-demo-context > div { min-width: 0; background: #f5f7fb; border: 1px solid #e4e9f1; border-radius: 9px; padding: 10px 11px; }
.ai-demo-context span, .ai-demo-context strong { display: block; overflow-wrap: anywhere; }
.ai-demo-context span { font-size: 12px; color: #5d6980; }
.ai-demo-context strong { color: #182644; font-size: 13px; font-weight: 700; line-height: 1.4; margin-top: 3px; }
.ai-demo-answer { font-size: 15px; line-height: 1.6; color: #3e4b62; margin-top: 19px; }
.ai-demo-table-wrap { width: 100%; margin-top: 16px; }
.ai-demo table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.ai-demo caption { text-align: left; font-size: 12px; color: #5c6880; margin-bottom: 6px; }
.ai-demo th, .ai-demo td { padding: 8px 5px; text-align: left; vertical-align: top; border-bottom: 1px solid #e5e9f1; font-size: 12px; line-height: 1.4; overflow-wrap: anywhere; }
.ai-demo th { color: #536079; font-weight: 700; }
.ai-demo td { color: #27344e; }
.ai-demo th:first-child { width: 28%; }
.ai-demo-evidence { font-size: 12px; line-height: 1.5; color: #586580; margin-top: 14px; }
.ai-demo-caption { background: #fff4e9; color: #583716; border-top: 1px solid #f3d9be; padding: 11px 17px; font-size: 13px; font-weight: 700; line-height: 1.5; }

.ai-page-hero { padding: 84px 0 90px; background: linear-gradient(130deg, #f7f8ff, #edf1ff 60%, #fff8f1); }
.ai-page-hero-grid { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); align-items: center; gap: clamp(32px, 5vw, 76px); }
.ai-page-hero h1 { font-size: clamp(46px, 4.3vw, 66px); line-height: 1.08; }
.ai-page-hero h1 span { color: var(--purple); }
.ai-page-hero .ai-lead { max-width: 640px; margin-top: 24px; color: #43516d; }
.ai-page-hero .ai-support { color: #263999; margin-top: 23px; }
.ai-page-availability { font-size: 14px; line-height: 1.65; color: #4d5a74; border-left: 3px solid var(--brand-orange); padding-left: 15px; margin-top: 28px; }
.ai-capabilities-section { background: #fff; }
.ai-capabilities-section .section-heading { max-width: 840px; }
.ai-capability-nav { display: flex; flex-wrap: wrap; gap: 9px; margin: 32px 0 37px; }
.ai-capability-nav a { font-size: 13px; line-height: 1.4; font-weight: 650; color: #2f3b67; background: #eef1ff; padding: 9px 12px; border: 1px solid #d6dff5; border-radius: 999px; }
.ai-capability-nav a:hover { background: #e0e5ff; }
.ai-capability-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.ai-capability { min-width: 0; scroll-margin-top: 118px; background: #f8f9fd; border: 1px solid #e2e7f0; border-radius: 16px; padding: 24px; }
.ai-capability-top { display: flex; justify-content: space-between; align-items: center; }
.ai-capability-number { font-size: 13px; font-weight: 750; letter-spacing: .1em; color: #60709b; }
.ai-capability .icon-box { background: #edf0ff; border: 0; }
.ai-capability h3 { color: #18233f; font-size: 21px; line-height: 1.25; margin-top: 23px; }
.ai-capability p { font-size: 15px; line-height: 1.65; margin-top: 13px; }
.ai-capability .ai-capability-boundary { border-top: 1px solid #dfe5ef; padding-top: 13px; color: #33419b; font-size: 14px; font-weight: 600; }
.ai-private-section { background: #101a32; color: #fff; }
.ai-private-section .eyebrow { color: #ffb477; }
.ai-private-section .section-heading h2 { color: #fff; }
.ai-private-section .section-heading p, .ai-private-intro > p { color: #d3dcf0; font-size: 16px; line-height: 1.75; }
.ai-private-intro { display: grid; grid-template-columns: 1fr .75fr; gap: 42px; align-items: end; }
.ai-principle-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 42px; }
.ai-principle-grid article { background: #1d2b49; border: 1px solid #384b72; border-radius: 16px; padding: 23px; }
.ai-principle-grid article > span { color: #ffc693; font-size: 13px; font-weight: 750; }
.ai-principle-grid h3 { color: #fff; font-size: 20px; line-height: 1.3; margin-top: 16px; }
.ai-principle-grid p { color: #d5def0; font-size: 15px; line-height: 1.65; margin-top: 12px; }
.ai-architecture-section { background: #f2f5ff; }
.ai-architecture-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(32px, 5vw, 80px); align-items: start; }
.ai-architecture-grid > div > p { font-size: 16px; line-height: 1.75; margin-top: 20px; }
.ai-architecture-grid .text-link { font-size: 14px; margin-top: 24px; }
.ai-architecture-steps { list-style: none; margin: 0; padding: 0; border: 1px solid #dce4f2; border-radius: 18px; background: #fff; overflow: hidden; }
.ai-architecture-steps li { display: flex; gap: 18px; padding: 17px 22px; }
.ai-architecture-steps li + li { border-top: 1px solid #e3e9f3; }
.ai-architecture-number { color: #3546b5; font-size: 13px; font-weight: 750; flex: 0 0 25px; }
.ai-architecture-steps strong { display: block; color: #17233d; font-size: 16px; line-height: 1.35; }
.ai-architecture-steps p { font-size: 14px; line-height: 1.55; margin-top: 4px; }
.ai-faq-section { background: #fff; }
.ai-final-cta { background: #dfe5ff; padding: 68px 0; }
.ai-final-cta .container { display: flex; align-items: end; justify-content: space-between; gap: 32px; }
.ai-final-cta .eyebrow { margin-bottom: 16px; }
.ai-final-cta h2 { font-size: clamp(32px, 3.2vw, 48px); }
.ai-final-cta p:not(.eyebrow) { font-size: 16px; max-width: 720px; line-height: 1.65; margin-top: 18px; }
.ai-final-cta .button { flex: 0 0 auto; }

@media screen and (max-width: 1199px) {
  .ai-home-grid, .ai-page-hero-grid { grid-template-columns: minmax(0, 1fr); }
  .ai-home-copy, .ai-page-hero-grid > div:first-child { max-width: 760px; }
  .ai-home-grid > .ai-demo, .ai-page-hero-grid .ai-demo { max-width: 900px; }
  .ai-capability-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media screen and (max-width: 860px) {
  .ai-home-spotlight, .ai-page-hero { padding: 66px 0; }
  .ai-private-intro, .ai-architecture-grid { grid-template-columns: minmax(0, 1fr); }
  .ai-principle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ai-final-cta .container { align-items: start; flex-direction: column; }
}
@media screen and (max-width: 599px) {
  .ai-home-spotlight, .ai-page-hero { padding: 52px 0; }
  .ai-home-copy h2 { font-size: clamp(36px, 10vw, 48px); }
  .ai-page-hero h1 { font-size: clamp(39px, 10vw, 50px); }
  .ai-lead { font-size: 16px; }
  .ai-actions { flex-direction: column; align-items: stretch; }
  .ai-actions .button { justify-content: space-between; width: 100%; }
  .ai-demo-body { grid-template-columns: minmax(0, 1fr); }
  .ai-demo-side { border-right: 0; border-bottom: 1px solid #e3e8f3; padding: 14px; }
  .ai-demo-choices { max-height: 165px; overflow-y: auto; }
  .ai-demo-results { padding: 18px 15px; }
  .ai-demo-context { grid-template-columns: minmax(0, 1fr); }
  .ai-demo table, .ai-demo tbody, .ai-demo tr, .ai-demo td { display: block; width: 100%; }
  .ai-demo thead { display: none; }
  .ai-demo tr { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 12px; padding: 11px 0; border-bottom: 1px solid #e5e9f1; }
  .ai-demo td { border: 0; padding: 0; font-size: 13px; }
  .ai-demo td::before { display: block; color: #64708a; font-size: 12px; }
  .ai-demo td:nth-child(1)::before { content: 'Reference'; }
  .ai-demo td:nth-child(2)::before { content: 'Date'; }
  .ai-demo td:nth-child(3)::before { content: 'Amount'; }
  .ai-demo td:nth-child(4)::before { content: 'State'; }
  .ai-capability-grid, .ai-principle-grid { grid-template-columns: minmax(0, 1fr); }
  .ai-capability { padding: 21px; }
  .ai-final-cta { padding: 52px 0; }
}
@media screen and (prefers-reduced-motion: no-preference) {
  @keyframes ai-preview-in { from { opacity: .55; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
  .ai-demo.is-ready .ai-demo-panel.is-selected { animation: ai-preview-in 180ms ease-out; }
}
