/* Page-specific presentation; the shared site navigation and typography stay intact. */
.ai-services-page .page-hero {
    background: radial-gradient(ellipse at 92% 20%, #e2f0d8 0, transparent 48%), #f6f8f3;
    border-bottom: 1px solid #e1e8db;
}
.ai-hero-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 64px; align-items: center; }
.ai-hero-grid h1 { font-size: clamp(2.2rem, 3.3vw, 3rem); line-height: 1.12; letter-spacing: -.045em; }
.ai-hero-grid .page-lead { font-size: 1.04rem; line-height: 1.85; }
.ai-hero-grid .page-eyebrow { font-size: .7rem; letter-spacing: .11em; }
.ai-hero-grid .fact-strip { grid-template-columns: 1fr; gap: 12px; margin-top: 30px; }
.ai-hero-grid .fact-strip > div { display: grid; grid-template-columns: 92px 1fr; gap: 12px; }
.ai-hero-grid .fact-strip dt { font-size: .73rem; }
.ai-hero-grid .fact-strip dd { margin: 0; font-size: .81rem; }
.ai-workflow { padding: 30px; color: #f5f9f0; background: #183024; border: 1px solid #35503f; border-radius: 22px; box-shadow: 0 24px 64px #17302118; }
.ai-workflow-top { display: flex; align-items: center; gap: 9px; color: #bdcdb7; font-size: .63rem; font-weight: 700; letter-spacing: .14em; }
.ai-status-dot { width: 7px; height: 7px; flex-shrink: 0; background: #b1df82; border-radius: 50%; }
.ai-workflow-title { margin: 18px 0 26px; font-size: 1.65rem; line-height: 1.3; font-weight: 700; letter-spacing: -.035em; }
.ai-workflow-steps { list-style: none; margin: 0; padding: 0; }
.ai-workflow-steps li { display: flex; align-items: center; gap: 14px; position: relative; padding: 0 0 26px; }
.ai-workflow-steps li:last-child { padding-bottom: 0; }
.ai-workflow-steps li:not(:last-child)::after { content: ''; position: absolute; left: 20px; top: 43px; bottom: 3px; border-left: 1px dashed #53694f; }
.ai-workflow-icon { display: grid; place-items: center; flex: 0 0 42px; height: 42px; background: #ffffff0a; border: 1px solid #4c6345; border-radius: 12px; color: #c1e9a1; }
.ai-workflow-icon svg { width: 21px; height: 21px; }
.ai-workflow-icon .module-icon { margin: 0; stroke: currentColor; }
.ai-workflow-steps strong, .ai-workflow-steps div > span { display: block; }
.ai-workflow-steps strong { font-size: .85rem; font-weight: 600; }
.ai-workflow-steps div > span { color: #b9c7b6; font-size: .72rem; margin-top: 3px; }
.ai-workflow-note { margin: 27px 0 0; padding-top: 16px; border-top: 1px solid #3c5140; color: #bbcab6; font-size: .66rem; line-height: 1.6; }
.ai-jump-links { display: flex; flex-wrap: wrap; gap: 10px 28px; padding-top: 23px; padding-bottom: 23px; border-bottom: 1px solid #e6eadf; }
.ai-jump-links a { color: #3b5930; font-size: .8rem; font-weight: 600; padding: 5px 0; }
.ai-jump-links a:hover { text-decoration: underline; text-underline-offset: 5px; }
.ai-services-page h2[id] { scroll-margin-top: 120px; }
.ai-card-section .block-head-copy { max-width: 760px; }
.ai-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ai-card-grid > article { padding: 30px; background: #fcfdfb; }
.ai-card-grid h3 { font-size: 1.09rem; line-height: 1.45; }
.ai-card-grid p { line-height: 1.85; }
.ai-card-grid a, .ai-prose a { color: #376b29; text-decoration: underline; text-decoration-color: #a9c69c; text-underline-offset: 3px; }
.ai-card-grid a:hover, .ai-prose a:hover { text-decoration-color: currentColor; }
.ai-services-page .compare td, .ai-services-page .compare th { min-width: 180px; }
@media (max-width: 1000px) {
    .ai-hero-grid { gap: 32px; }
    .ai-workflow { padding: 24px; }
}
@media (max-width: 760px) {
    .ai-hero-grid, .ai-card-grid { grid-template-columns: 1fr; }
    .ai-hero-grid { gap: 35px; }
    .ai-workflow { max-width: 520px; width: 100%; }
    .ai-jump-links { gap: 8px 20px; }
    .ai-card-grid > article { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
}
