/* AI Services: shared CMS presentation based on preview(11). */
.service-page .ai-service-page { color:#111; background:#fff; }
.service-page .ai-service-page .svc-service-hero { padding:32px 0 44px; }
.service-page .ai-service-page h1 { font-size:clamp(30px,3.7vw,52px); line-height:1.1; letter-spacing:-.04em; }
.service-page .ai-service-page h2 { font-size:clamp(26px,2.9vw,40px); }
.service-page .ai-service-page .svc-hero-picture { border-radius:26px; padding:10px; background:#fff; box-shadow:0 22px 56px #11182712; }
.service-page .ai-service-page .svc-hero-picture img { aspect-ratio:4/3; border-radius:18px; }
.service-page .ai-service-page :is(.svc-section,.aiax-section) { padding-block:44px; }
.service-page .ai-service-page :is(.svc-card,.aiax-service,.aiax-step,.aiax-usecase) { padding:24px; border-radius:20px; border-color:#e4e6ea; box-shadow:0 8px 28px #11182706; }
.service-page .ai-service-page :is(.gptx-story-content,.aivr-feature-flow,.gptx-platform-side,.hda-feature-stack,.prmx-stack,.awfx-story-list) { display:grid; gap:18px; }
.service-page .ai-service-page :is(.gptx-solution-feature,.aivr-mosaic-feature,.hda-featured-panel,.prmx-featured-card) { grid-column:1/-1; padding:28px; background:linear-gradient(120deg,#fff,#fff7f1); border:1px solid #e4e6ea; border-radius:22px; }
.service-page .ai-service-page :is(.gptx-solution-image,.aivr-mosaic-visual,.hda-analysis-visual,.prmx-showcase-image,.awfx-showcase-image) img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:18px; }
.service-page .ai-service-page :is(.svc-process-grid,.aiax-steps-grid) { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.service-page .ai-service-page :is(.gptx-solution-grid,.aivr-mosaic,.awfx-route-grid) { display:flex; flex-wrap:wrap; gap:18px; }
.service-page .ai-service-page :is(.gptx-solution-grid,.aivr-mosaic,.awfx-route-grid) > * { flex:1 1 calc((100% - 36px)/3); min-width:0; }
.service-page .ai-service-page :is(.gptx-solution-grid,.aivr-mosaic) > :is(.gptx-solution-feature,.aivr-mosaic-feature) { flex-basis:100%; }
.service-page .ai-service-page :is(.gptx-result-points,.awfx-route-points,.mlsx-showcase-list) { display:grid; gap:16px; }
.service-page .ai-service-page :is(.gptx-result-points,.awfx-route-points) > div { padding:16px 0; border-bottom:1px solid #e4e6ea; }
.service-page .ai-service-page :is(.gptx-result-points,.awfx-route-points) strong { display:block; margin-bottom:6px; }
.service-page .ai-service-page :is(.gptx-result-points,.awfx-route-points) span { color:#5f6368; font-size:14px; line-height:1.65; }
.service-page .ai-related { padding:44px 0; background:#f5f6f8; }
.service-page .ai-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:26px; }
.service-page .ai-related-card { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:24px; min-height:90px; border:1px solid #e4e6ea; border-radius:18px; background:#fff; color:#111; font-size:18px; font-weight:600; }
.service-page .ai-related-card > :last-child { color:#ff6000; }
.service-page .ai-related-card:hover { border-color:#ffb38b; background:#fff8f3; }
.service-page .ai-service-page a:focus-visible { outline:2px solid #ff6000; outline-offset:4px; }
@media(max-width:1000px) {
 .service-page .ai-service-page :is(.svc-process-grid,.aiax-steps-grid,.ai-related-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .service-page .ai-service-page :is(.svc-section,.aiax-section,.svc-service-hero,.ai-related) { padding-block:28px; }
 .service-page .ai-service-page :is(.svc-process-grid,.aiax-steps-grid,.ai-related-grid) { grid-template-columns:1fr; }
 .service-page .ai-service-page :is(.gptx-solution-grid,.aivr-mosaic,.awfx-route-grid) > * { flex-basis:100%; }
 .service-page .ai-service-page :is(.svc-card,.aiax-service,.aiax-step,.aiax-usecase) { padding:20px; }
}
/* Keep badge dimensions independent of the legacy card class on process numbers. */
.service-page .ai-service-page .svc-card-heading > .svc-heading-badge { width:42px; height:42px; min-width:42px; padding:0; border:0; border-radius:12px; white-space:nowrap; overflow-wrap:normal; line-height:1; font-size:14px; box-shadow:none; }
.service-page .ai-service-page :is(.gptx-capability-list,.aivr-capability-list,.hda-capability-list,.prmx-capability-list,.awfx-capability-list) { display:grid; gap:16px; margin-top:24px; }
.service-page .ai-service-page :is(.gptx-capability-item,.aivr-capability-item,.hda-capability-item,.prmx-capability-item) strong { display:block; margin-bottom:8px; }
.service-page .ai-service-page :is(.gptx-capability-item,.aivr-capability-item,.hda-capability-item,.prmx-capability-item) span { color:#5f6368; font-size:15px; line-height:1.65; }
.service-page .ai-service-page :is(.gptx-story-grid,.aivr-editorial-shell,.hda-editorial-shell,.prmx-story-shell,.awfx-story-shell,.gptx-platform-shell,.hda-platform-shell) { align-items:start; }
.service-page .ai-service-page :is(.gptx-feature-card,.aivr-flow-item) { display:grid; grid-template-columns:42px minmax(0,1fr); gap:16px; align-items:start; }
.service-page .ai-service-page :is(.gptx-feature-card,.aivr-flow-item) > :is(.gptx-icon-box,.aivr-flow-icon) { margin:0; }
.service-page .ai-service-page :is(.gptx-feature-card,.aivr-flow-item) > :is(h3,p) { grid-column:2; }
.service-page .ai-service-page :is(.gptx-solution-feature,.aivr-mosaic-feature):has(img) { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:28px; }
.service-page .ai-service-page :is(.gptx-solution-feature,.aivr-mosaic-feature,.hda-featured-panel) h3 { font-size:clamp(22px,2.2vw,30px); line-height:1.3; margin:12px 0 18px; }
.service-page .ai-service-page :is(.gptx-note-grid,.prmx-note-grid,.awfx-note-grid) { display:grid; grid-template-columns:1fr; gap:14px; }
.service-page .ai-service-page :is(.gptx-note-card,.prmx-note-card,.awfx-note-card) { padding:20px; }
.service-page .ai-service-page :is(.gptx-note-card,.prmx-note-card,.awfx-note-card) strong { display:block; margin-bottom:8px; }
.service-page .ai-service-page :is(.gptx-note-card,.prmx-note-card,.awfx-note-card) span { font-size:15px; color:#5f6368; line-height:1.65; }
.service-page .ai-service-page .hda-feature-layout { display:block; }
.service-page .ai-service-page .hda-feature-stack { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:20px; }
.service-page .ai-service-page img:not(.testimonial-person img) { border-radius:18px; }
.service-page .ai-service-page :is(.gptx-appimage,.gptx-side-media,.aivr-side-media,.hda-side-media,.prmx-side-media) img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.service-page .ai-service-page .svc-media-panel img { border-radius:14px; }
.service-page .ai-service-page li:has(> i.fa-check) { list-style:none; }
.service-page .ai-service-page li > i.fa-check { color:#ff6000; margin-right:6px; }
@media(max-width:1000px) {
 .service-page .ai-service-page :is(.gptx-solution-feature,.aivr-mosaic-feature):has(img) { grid-template-columns:1fr; }
 .service-page .ai-service-page .hda-feature-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .service-page .ai-service-page .hda-feature-stack { grid-template-columns:1fr; }
}
