/* ══════════════════════════════════════════════════════════════
   AI INSIGHTS — page-specific CSS only.
   Reuses global tokens (--font-display, --gray-*, --shadow-*, .btn,
   .fcm-card etc.) from /style.css, which this page also links to.
   Scoped under #ai-page throughout so nothing here can leak into or
   override any other page's styles.
   ══════════════════════════════════════════════════════════════ */

#ai-page{background:#fff;}
#ai-page .ent-section{padding:60px 0;position:relative;}
#ai-page .ent-section-alt{background:#F8FAFF;}
#ai-page .ent-bg-blue{background:linear-gradient(160deg,#EFF6FF 0%,#DBEAFE 100%);}
#ai-page .ent-bg-purple{background:linear-gradient(160deg,#F5F3FF 0%,#EDE9FE 100%);}
#ai-page .ent-bg-dark{background:linear-gradient(160deg,#0B1533 0%,#1E1B4B 100%);}
#ai-page .ent-header{max-width:760px;margin:0 auto 34px;text-align:center;}
#ai-page .ent-eyebrow{display:inline-block;font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;color:#1D4ED8;background:#EFF4FF;border:1px solid #DCE6FC;border-radius:100px;padding:6px 16px;margin-bottom:14px;}
#ai-page h2.ent-h2{font-family:var(--font-display);font-size:clamp(26px,3vw,36px);font-weight:800;line-height:1.15;letter-spacing:-.025em;color:var(--gray-900,#0F172A);margin:0 0 12px;}
#ai-page .ent-sub{font-size:15.5px;line-height:1.7;color:#64748B;max-width:680px;margin:0 auto;}

/* ---- Core AI capability cards (reuses .ent-card visual recipe) ---- */
#ai-page .ent-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
#ai-page .ent-card{position:relative;background:#fff;border:1px solid #E2EAFB;border-radius:16px;padding:26px 20px 22px;box-shadow:0 3px 10px rgba(16,42,97,.06);transition:transform 280ms cubic-bezier(.22,1,.36,1),box-shadow 280ms cubic-bezier(.22,1,.36,1),border-color 280ms;overflow:hidden;height:100%;}
#ai-page .ent-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2563EB,#1D4ED8);border-radius:16px 16px 0 0;}
#ai-page .ent-card:nth-child(even)::before{background:linear-gradient(90deg,#F59E0B,#EA580C);}
#ai-page .ent-card:hover{transform:translateY(-6px);border-color:#BFD3FA;box-shadow:0 20px 40px rgba(16,42,97,.14);}
#ai-page .ent-ic{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;background:linear-gradient(150deg,#2563EB,#1D4ED8);box-shadow:0 10px 20px rgba(29,78,216,.25);font-size:21px;}
#ai-page .ent-card:nth-child(even) .ent-ic{background:linear-gradient(150deg,#F59E0B,#EA580C);box-shadow:0 10px 20px rgba(234,88,12,.25);}
#ai-page .ent-card h3{font-family:var(--font-display);font-size:16px;font-weight:800;color:#0F172A;margin:0 0 8px;}
#ai-page .ent-card p{font-size:13px;line-height:1.6;color:#64748B;margin:0;}

/* ---- Categorized capability groups (6 sections, compact list style) ---- */
#ai-page .cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px;}
#ai-page .cat-card{background:#fff;border:1px solid #E2EAFB;border-radius:18px;padding:24px 22px;box-shadow:0 2px 8px rgba(16,42,97,.05);}
#ai-page .cat-card-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
#ai-page .cat-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;background:linear-gradient(150deg,#2563EB,#1D4ED8);box-shadow:0 8px 16px rgba(29,78,216,.22);}
#ai-page .cat-card h3{font-family:var(--font-display);font-size:15.5px;font-weight:800;color:#0F172A;margin:0;}
#ai-page .cat-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
#ai-page .cat-list li{display:flex;align-items:flex-start;gap:9px;font-size:13px;line-height:1.5;color:#475569;}
#ai-page .cat-list li svg{flex-shrink:0;margin-top:3px;width:14px;height:14px;stroke:#059669;}

/* ---- Alerts section: dashboard-style pill grid ---- */
#ai-page .alert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;}
#ai-page .alert-card{background:#fff;border:1px solid #E2EAFB;border-radius:14px;padding:18px 18px 16px;display:flex;align-items:flex-start;gap:12px;box-shadow:0 2px 8px rgba(16,42,97,.05);transition:transform 250ms,box-shadow 250ms;}
#ai-page .alert-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(16,42,97,.1);}
#ai-page .alert-dot{width:36px;height:36px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:16px;background:#FEF3C7;color:#B45309;}
#ai-page .alert-card h4{font-family:var(--font-display);font-size:13.5px;font-weight:800;color:#0F172A;margin:0 0 3px;}
#ai-page .alert-card p{font-size:12px;color:#64748B;margin:0;line-height:1.5;}

/* ---- Zig-zag alternating feature sections ---- */
#ai-page .zz-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
#ai-page .zz-grid.zz-rev .zz-visual{order:2;}
#ai-page .zz-grid.zz-rev .zz-content{order:1;}
/* No colored box/card — image shown directly at its natural aspect
   ratio, centered and capped at a consistent max-width so all 8
   zig-zag images line up the same way regardless of source ratio. */
#ai-page .zz-visual{display:flex;align-items:center;justify-content:center;}
#ai-page .zz-visual img{width:100%;max-width:560px;height:auto;object-fit:contain;display:block;}
#ai-page .zz-eyebrow{display:inline-block;font-family:var(--font-display);font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:100px;margin-bottom:14px;}
#ai-page .zz-content h2{font-family:var(--font-display);font-size:clamp(22px,2.6vw,30px);font-weight:800;line-height:1.2;color:#0F172A;margin:0 0 14px;}
#ai-page .zz-content p{font-size:15px;line-height:1.75;color:#475569;margin:0 0 22px;max-width:480px;}
#ai-page .zz-content ul{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:9px;}
#ai-page .zz-content ul li{display:flex;align-items:flex-start;gap:9px;font-size:14px;color:#334155;}
#ai-page .zz-content ul li svg{flex-shrink:0;margin-top:3px;width:15px;height:15px;stroke:#059669;}
#ai-page .zz-link{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-display);font-weight:700;font-size:14px;color:#1D4ED8;text-decoration:none;}
#ai-page .zz-link svg{width:15px;height:15px;transition:transform 200ms;}
#ai-page .zz-link:hover svg{transform:translateX(3px);}

/* ---- Ecosystem tree section ---- */
#ai-page .eco-wrap{max-width:760px;margin:32px auto 0;background:#fff;border:1px solid #E2EAFB;border-radius:22px;padding:36px 32px;box-shadow:0 12px 32px rgba(16,42,97,.08);}
#ai-page .eco-root{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:900;font-size:19px;color:#0F172A;margin-bottom:20px;}
#ai-page .eco-branches{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
#ai-page .eco-node{border:1.5px solid #E2EAFB;border-radius:14px;padding:16px 12px;text-align:center;}
#ai-page .eco-node .eco-ic{width:36px;height:36px;border-radius:10px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;font-size:16px;}
#ai-page .eco-node span{display:block;font-family:var(--font-display);font-size:12.5px;font-weight:800;color:#0F172A;}
#ai-page .eco-node small{display:block;font-size:10.5px;color:#94A3B8;margin-top:2px;}

/* ---- Impact section ---- */
#ai-page .impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px;}
#ai-page .impact-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:22px 18px;}
#ai-page .impact-card .impact-ic{width:38px;height:38px;border-radius:10px;background:rgba(37,99,235,.25);display:flex;align-items:center;justify-content:center;font-size:17px;margin-bottom:12px;}
#ai-page .impact-card h4{font-family:var(--font-display);font-size:13.5px;font-weight:800;color:#fff;margin:0 0 5px;}
#ai-page .impact-card p{font-size:12px;color:rgba(255,255,255,.65);margin:0;line-height:1.5;}

/* ---- AI + Human section ---- */
#ai-page .human-wrap{max-width:720px;margin:0 auto;text-align:center;background:#fff;border:1px solid #E2EAFB;border-radius:22px;padding:40px 36px;box-shadow:0 12px 32px rgba(16,42,97,.08);}
#ai-page .human-wrap p{font-size:15.5px;line-height:1.85;color:#475569;margin:0 0 14px;}

/* ---- Final CTA (reuses site's dark CTA-band pattern) ---- */
#ai-page .ai-final-cta{background:linear-gradient(148deg,#0B1533 0%,#1E1B4B 100%);padding:64px 0;text-align:center;}
#ai-page .ai-final-cta h2{font-family:var(--font-display);font-size:clamp(26px,3.2vw,38px);font-weight:900;color:#fff;margin:0 0 14px;}
#ai-page .ai-final-cta p{font-size:16px;color:rgba(255,255,255,.75);max-width:620px;margin:0 auto 30px;line-height:1.7;}
#ai-page .ai-final-cta .cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* ---- Reveal-on-scroll (same convention as /capabilities/) ---- */
#ai-page [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);}
#ai-page [data-reveal].is-visible{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  #ai-page [data-reveal]{opacity:1!important;transform:none!important;transition:none!important;}
}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */
@media(max-width:1024px){
  #ai-page .ent-grid-4{grid-template-columns:repeat(2,1fr);}
  #ai-page .cat-grid{grid-template-columns:repeat(2,1fr);}
  #ai-page .alert-grid{grid-template-columns:repeat(2,1fr);}
  #ai-page .impact-grid{grid-template-columns:repeat(2,1fr);}
  #ai-page .eco-branches{grid-template-columns:repeat(3,1fr);}
  #ai-page .zz-grid{gap:36px;}
}
@media(max-width:768px){
  #ai-page .ent-section{padding:46px 0;}
  #ai-page .zz-grid{grid-template-columns:1fr;gap:28px;}
  #ai-page .zz-grid.zz-rev .zz-visual{order:1;}
  #ai-page .zz-grid.zz-rev .zz-content{order:2;}
  #ai-page .zz-content p{max-width:none;}
  #ai-page .eco-branches{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:560px){
  #ai-page .ent-grid-4{grid-template-columns:1fr 1fr;}
  #ai-page .cat-grid{grid-template-columns:1fr;}
  #ai-page .alert-grid{grid-template-columns:1fr 1fr;}
  #ai-page .impact-grid{grid-template-columns:1fr 1fr;}
  #ai-page .eco-branches{grid-template-columns:1fr 1fr;}
  #ai-page .ai-final-cta .cta-row{flex-direction:column;align-items:stretch;}
}
@media(max-width:400px){
  #ai-page .ent-grid-4{grid-template-columns:1fr;}
  #ai-page .alert-grid{grid-template-columns:1fr;}
  #ai-page .impact-grid{grid-template-columns:1fr;}
  #ai-page .eco-branches{grid-template-columns:1fr;}
}
