/* ------------------------------------------------------------------
   AI Data Engine home page — page-specific additions on top of the
   shared header.css / common.css / footer.css kit (page-hero-dark,
   kit-section, card-grid, faq-section, cta-band, lead-form, etc.).
------------------------------------------------------------------- */

/* Numbered process steps ("How It Works") */
.pg-numbered { list-style: none; margin: 2.5rem 0 0; padding: 0; border: 1px solid var(--utl-border); background: var(--utl-paper); }
.pg-numbered > li { padding: 1.5rem; border-top: 1px solid var(--utl-border); display: grid; gap: .5rem; }
.pg-numbered > li:first-child { border-top: 0; }
@media (min-width: 576px) { .pg-numbered > li { grid-template-columns: auto 1fr; align-items: baseline; gap: 1rem 2rem; padding: 2rem; } }
.pg-numbered .num { font-family: "IBM Plex Mono", ui-monospace, monospace; font-size: .75rem; color: var(--utl-purple); }
.pg-numbered .ttl { font-size: 1.125rem; font-weight: 600; line-height: 1.3; }
.pg-numbered .ttl,
.pg-numbered .t-body { grid-column: 2; }
@media (max-width: 575.98px) { .pg-numbered .ttl, .pg-numbered .t-body { grid-column: 1; } }

/* Vendor comparison table */
.vendor-compare-table { border: 1px solid var(--utl-border); border-collapse: collapse; width: 100%; }
.vendor-compare-table th, .vendor-compare-table td { padding: 1rem 1.25rem; border-top: 1px solid var(--utl-border); font-size: .9375rem; vertical-align: middle; }
.vendor-compare-table thead th { border-top: 0; background: var(--utl-mist); font-weight: 600; color: var(--utl-ink); }
.vendor-compare-table td.is-yes { color: var(--utl-green); font-weight: 700; font-size: 1.125rem; }
.vendor-compare-table td.is-no { color: var(--utl-slate); font-weight: 700; font-size: 1.125rem; }
.vendor-compare-table td.is-limited { color: var(--utl-slate); font-weight: 600; font-size: .8125rem; text-transform: uppercase; letter-spacing: .08em; }

/* Icon badge used on industry / solution card grids across the ai-data-engine section */
.card-icon-badge { display: inline-flex; align-items: center; justify-content: center; width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--utl-mist); color: var(--utl-purple); font-size: 1.125rem; margin-bottom: 1rem; }
.card-grid.tone-navy .card-icon-badge { background: rgba(255,255,255,.1); color: var(--utl-green); }

/* bullet-list is styled for light backgrounds by default (dark ink text,
   light border) — override for use inside the dark hero card */
.page-hero-dark-card .bullet-list { border-top-color: rgba(255,255,255,.15); }
.page-hero-dark-card .bullet-row { color: var(--utl-paper); }

/* Stack/integrations logo chips (Works With Your Stack) */
.ade-stack-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--utl-border); border: 1px solid var(--utl-border); margin-top: 2.5rem; }
@media (min-width: 576px) { .ade-stack-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 768px) { .ade-stack-grid { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 1200px) { .ade-stack-grid { grid-template-columns: repeat(6, 1fr); } }
.ade-stack-item { background: var(--utl-paper); padding: 2rem 1rem 1.5rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; text-align: center; transition: background-color .2s ease; }
.ade-stack-item:hover { background: var(--utl-mist); }
.ade-stack-item .ade-stack-icon-wrap { display: flex; align-items: center; justify-content: center; height: 2.75rem; }
.ade-stack-item img { height: 2.25rem; width: 2.25rem; object-fit: contain; filter: grayscale(1); opacity: .55; transition: filter .2s ease, opacity .2s ease; }
.ade-stack-item:hover img { filter: grayscale(0); opacity: 1; }
.ade-stack-item .ade-stack-glyph { height: 2.25rem; width: 2.25rem; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--utl-mist); color: var(--utl-slate); transition: background-color .2s ease, color .2s ease; }
.ade-stack-item:hover .ade-stack-glyph { background: var(--utl-purple); color: var(--utl-paper); }
.ade-stack-item span { font-size: .8125rem; font-weight: 600; color: var(--utl-ink); }

/* Home: "Speak with an engineer" + "What our customers say" two-up section */
.ade-form-testimonial-grid { display: grid; gap: 3rem; grid-template-columns: 1fr; }
@media (min-width: 992px) { .ade-form-testimonial-grid { grid-template-columns: 1fr 1fr; } }
.ade-customer-quotes { display: grid; gap: 1px; background: var(--utl-border); border: 1px solid var(--utl-border); max-height: 32rem; overflow-y: auto; }
.ade-customer-quote { display: flex; gap: 1.25rem; padding: 1.5rem; background: var(--utl-paper); }
.ade-customer-quote-photo { width: 3.5rem; height: 3.5rem; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
