{"id":1358,"date":"2024-11-12T10:58:47","date_gmt":"2024-11-12T09:58:47","guid":{"rendered":"https:\/\/www.prismia.ch\/home\/integration\/"},"modified":"2026-07-21T11:41:47","modified_gmt":"2026-07-21T10:41:47","slug":"integration","status":"publish","type":"page","link":"https:\/\/www.prismia.ch\/en\/integration\/","title":{"rendered":"Integration"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1358\" class=\"elementor elementor-1358 elementor-395\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bd0959e e-flex e-con-full pia-wrap pia-nav e-con e-parent\" data-id=\"bd0959e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-126f5cd elementor-widget elementor-widget-html\" data-id=\"126f5cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n\/* ============================================================\n   PrismIA \u2014 mockup-v2 \u00b7 Design system \"sharp & clair\"\n   Tokens \u2192 base \u2192 composants \u2192 sections \u2192 responsive\n============================================================ *\/\n\n:root {\n  \/* Couleurs charte *\/\n  --p: #1929DD;          \/* primaire *\/\n  --a: #2C55FB;          \/* accent *\/\n  --lav: #91B1FF;        \/* secondaire lavande *\/\n  --dark: #04071b;       \/* navy hero\/footer *\/\n  --deep: #0A1240;\n  --ink: #0A0F2E;        \/* texte *\/\n  --muted: #4E5A85;      \/* texte secondaire *\/\n  --faint: #8B95BC;\n  --border: #E4E9F7;\n  --pale: #F7F9FF;       \/* fond section altern\u00e9 *\/\n  --pale2: #EEF1FF;      \/* fond section soutenu *\/\n  --white: #ffffff;\n\n  \/* Typo *\/\n  --sans: \"Plus Jakarta Sans\", system-ui, -apple-system, \"Segoe UI\", sans-serif;\n  --mono: \"Geist Mono\", ui-monospace, \"Cascadia Code\", Consolas, monospace;\n\n  \/* Layout *\/\n  --container: 1200px;\n  --radius-card: 10px;  \/* 16\u219210 le 12\/07 (Fran\u00e7ois : rendu plus pro\/action) *\/\n  --radius-btn: 8px;    \/* 12\u21928 idem *\/\n\n  \/* Ombres (teint\u00e9es bleu, jamais gris) *\/\n  --sh-sm: 0 2px 10px rgba(10, 18, 64, .06);\n  --sh-md: 0 10px 30px rgba(10, 18, 64, .10);\n  --sh-hover: 0 18px 44px rgba(25, 41, 221, .14);\n  --sh-cta: 0 10px 28px rgba(25, 41, 221, .28);\n}\n\n\/* ---------- Base ---------- *\/\n* { box-sizing: border-box; margin: 0; padding: 0; }\nhtml { scroll-behavior: smooth; }\n[id] { scroll-margin-top: 110px; } \/* les ancres atterrissent sous la nav fixe *\/\nbody {\n  font-family: var(--sans);\n  color: var(--ink);\n  background: var(--white);\n  line-height: 1.6;\n  font-size: 17px;\n  -webkit-font-smoothing: antialiased;\n}\nimg { max-width: 100%; display: block; }\na { color: inherit; }\n::selection { background: rgba(44, 85, 251, .18); }\n\n.container { max-width: var(--container); margin: 0 auto; padding: 0 28px; }\n\n\/* ---------- Typo helpers ---------- *\/\n.overline {\n  font-family: var(--mono);\n  font-size: 12.5px;\n  font-weight: 500;\n  letter-spacing: .14em;\n  text-transform: uppercase;\n  color: var(--a);\n  display: flex;\n  align-items: center;\n  gap: 9px;\n  margin-bottom: 16px;\n}\n\/* triangle-prisme d\u00e9grad\u00e9 (signature PrismIA, remplace le \"\/\" h\u00e9rit\u00e9) *\/\n.overline::before {\n  content: \"\"; width: 10px; height: 9px; flex: 0 0 auto;\n  background: linear-gradient(120deg, var(--p), var(--a) 55%, var(--lav));\n  clip-path: polygon(50% 0, 100% 100%, 0 100%);\n}\n\nh2 {\n  font-size: clamp(30px, 3.6vw, 44px);\n  font-weight: 750;\n  letter-spacing: -0.015em;\n  line-height: 1.12;\n  text-wrap: balance;\n  color: var(--ink);\n}\nh2 em, h1 em { font-style: italic; font-weight: 700; color: var(--a); }\nh3 { font-size: 21px; font-weight: 700; letter-spacing: -0.01em; color: var(--ink); }\n.lead { color: var(--muted); font-size: 18px; max-width: 62ch; }\n\n.section { padding: 112px 0; }\n.section-head { max-width: 760px; margin-bottom: 56px; }\n.section-head p { margin-top: 18px; }\n\n\/* ---------- Boutons (sharp & modernes) ---------- *\/\n.btn {\n  display: inline-flex; align-items: center; gap: 10px;\n  font-family: var(--sans); font-weight: 700; font-size: 15.5px;\n  padding: 15px 26px; border-radius: var(--radius-btn);\n  text-decoration: none; cursor: pointer; border: 0;\n  transition: transform .2s ease, box-shadow .25s ease, background .2s ease, color .2s ease, border-color .2s ease;\n}\n.btn svg { transition: transform .2s ease; flex: 0 0 auto; }\n.btn:hover svg { transform: translateX(4px); }\n\n.btn-primary { background: var(--p); color: #fff; box-shadow: var(--sh-cta); }\n.btn-primary:hover { background: var(--a); transform: translateY(-2px); box-shadow: 0 16px 36px rgba(25, 41, 221, .38); }\n\n.btn-light { background: #fff; color: var(--p); box-shadow: 0 10px 28px rgba(4, 7, 27, .35); }\n.btn-light:hover { background: var(--pale2); transform: translateY(-2px); }\n\n.btn-ghost { background: transparent; color: var(--ink); border: 1.5px solid var(--border); }\n.btn-ghost:hover { border-color: var(--a); color: var(--a); transform: translateY(-2px); }\n\n\/* CTA Maturity Assessment : \u00ab prisme vivant \u00bb (2026-07-13, remplace la rotation conique 2 tons)\n   Signature IA multi-couleur : le spectre COULE le long du liser\u00e9 (translation, jamais de\n   rotation), une aurora multicolore respire sous le bouton, une \u00e9tincelle scintille avant\n   le label. Boucle exacte : 1re et derni\u00e8re teinte identiques + glissement d'un multiple\n   entier de tuile (300%). *\/\n.btn-maturity {\n  position: relative; isolation: isolate;\n  background: #fff; color: var(--p); border: 0;\n  animation: pia-aurora 5.6s ease-in-out infinite;\n}\n.btn-maturity::before { \/* liser\u00e9 : flux spectral 6 teintes *\/\n  content: \"\"; position: absolute; inset: 0; border-radius: inherit; padding: 2px;\n  background: linear-gradient(90deg,\n    #2C55FB, #7B5CFF, #E14FF6, #FF6B5B, #F5A524, #37C8F5, #2C55FB) 0 50% \/ 300% 100%;\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor; mask-composite: exclude;\n  pointer-events: none; z-index: -1;\n  animation: pia-flow 7s linear infinite;\n  transition: filter .25s ease;\n}\n\/* Ic\u00f4ne PODIUM anim\u00e9e (span .podium + 3 <i> dans les 3 boutons maturit\u00e9) :\n   cycle 6.5s partag\u00e9 par tous les \u00e9l\u00e9ments (synchro par pourcentages) \u2014\n   intro : les 3 marches jaillissent du sol en cascade (gauche, droite,\n   centre) puis l'\u00e9toile dor\u00e9e surgit du sol en tournoyant et rebondit ;\n   ~3s o\u00f9 seule l'\u00e9toile tourne lentement ; outro : \u00e9toile en vrille +\n   marches qui redescendent ; courte pause avant de reboucler. *\/\n.btn-maturity .podium {\n  position: relative; width: 22px; height: 25px; flex: 0 0 auto;\n  overflow: hidden; \/* les \u00e9l\u00e9ments \"sous le sol\" sont r\u00e9ellement invisibles *\/\n}\n.btn-maturity .podium i {\n  position: absolute; bottom: 0; width: 6px;\n  border-radius: 1.5px 1.5px 0 0;\n  background: linear-gradient(180deg, #5B84FF, #2C55FB); \/* bleu satur\u00e9, plus de lavande blanch\u00e2tre *\/\n  transform: scaleY(0); transform-origin: bottom;\n}\n.btn-maturity .podium i:nth-child(1) { left: 0;    height: 10px; animation: pia-pod-g 6.5s infinite; }\n.btn-maturity .podium i:nth-child(2) { left: 8px;  height: 14px; animation: pia-pod-c 6.5s infinite; } \/* centre : sort en dernier, 2px sous l'\u00e9toile *\/\n.btn-maturity .podium i:nth-child(3) { left: 16px; height: 12px; animation: pia-pod-d 6.5s infinite; }\n.btn-maturity .podium::before { \/* \u00e9toile dor\u00e9e *\/\n  content: \"\"; position: absolute; top: 0; left: 50%; margin-left: -4.5px;\n  width: 9px; height: 9px;\n  background: linear-gradient(135deg, #FFC24B, #F5A524);\n  -webkit-mask: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.8l3 6.4 7 .8-5.2 4.8 1.4 6.9-6.2-3.5-6.2 3.5 1.4-6.9L2 9l7-.8 3-6.4z'\/%3E%3C\/svg%3E\") center \/ contain no-repeat;\n  mask: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.8l3 6.4 7 .8-5.2 4.8 1.4 6.9-6.2-3.5-6.2 3.5 1.4-6.9L2 9l7-.8 3-6.4z'\/%3E%3C\/svg%3E\") center \/ contain no-repeat;\n  transform: translateY(28px) rotate(-160deg) scale(.4);\n  animation: pia-pod-star 6.5s infinite;\n}\n.btn-maturity:hover { transform: translateY(-2px); }\n.btn-maturity:hover::before { filter: brightness(1.22) saturate(1.25); }\n.btn-maturity:hover .podium { filter: brightness(1.15); }\n.btn-maturity.on-dark { background: rgba(6,12,44,.36); color: #fff; backdrop-filter: blur(8px); } \/* vitre bleut\u00e9e, moins noire *\/\n.btn-maturity.on-dark .podium i { background: linear-gradient(180deg, #B8CCFF, #6E93FF); } \/* barres \u00e9claircies : contraste sur la vitre sombre *\/\n\n\/* Aurora : les teintes du halo \u00e9changent leurs places (d\u00e9rive, pas de rotation) *\/\n@keyframes pia-aurora {\n  0%, 100% { box-shadow: -22px 12px 42px -6px rgba(44,85,251,.62), 0 14px 44px -4px rgba(225,79,246,.42), 22px 12px 42px -6px rgba(245,165,36,.52); }\n  33%      { box-shadow: -22px 12px 42px -6px rgba(245,165,36,.54), 0 14px 44px -4px rgba(44,85,251,.58), 22px 12px 42px -6px rgba(225,79,246,.50); }\n  66%      { box-shadow: -22px 12px 42px -6px rgba(225,79,246,.52), 0 14px 44px -4px rgba(245,165,36,.40), 22px 12px 42px -6px rgba(44,85,251,.62); }\n}\n@keyframes pia-flow { to { background-position: 300% 50%; } }\n\/* Podium \u2014 cycle 6.5s : intro 0-36% (2.3s) \u00b7 \u00e9toile seule qui tourne 36-82% (~3s) \u00b7\n   outro 82-92% \u00b7 pause 92-100%. D\u00e9passement \u00e9lastique (1.18) \u00e0 chaque mont\u00e9e. *\/\n@keyframes pia-pod-g { \/* marche gauche *\/\n  0%, 3% { transform: scaleY(0); }\n  9%     { transform: scaleY(1.18); }\n  13%, 82% { transform: scaleY(1); }\n  88%, 100% { transform: scaleY(0); }\n}\n@keyframes pia-pod-d { \/* marche droite *\/\n  0%, 9% { transform: scaleY(0); }\n  15%    { transform: scaleY(1.18); }\n  19%, 84% { transform: scaleY(1); }\n  90%, 100% { transform: scaleY(0); }\n}\n@keyframes pia-pod-c { \/* marche centrale (la plus haute, sort en dernier) *\/\n  0%, 15% { transform: scaleY(0); }\n  22%     { transform: scaleY(1.2); }\n  26%, 86% { transform: scaleY(1); }\n  92%, 100% { transform: scaleY(0); }\n}\n@keyframes pia-pod-star { \/* surgit du sol en tournoyant, rebond, rotation lente, vrille de sortie *\/\n  0%, 26% { transform: translateY(28px) rotate(-160deg) scale(.4); }\n  32%     { transform: translateY(-2.5px) rotate(12deg) scale(1.18); } \/* rebond au-dessus du perchoir *\/\n  36%     { transform: translateY(0) rotate(0deg) scale(1); }\n  59%     { transform: translateY(0) rotate(180deg) scale(1.08); }     \/* rotation lente + micro-pulse *\/\n  82%     { transform: translateY(0) rotate(360deg) scale(1); }\n  90%, 100% { transform: translateY(3px) rotate(540deg) scale(0); }    \/* vrille de sortie *\/\n}\n@media (prefers-reduced-motion: reduce) {\n  .btn-maturity, .btn-maturity::before,\n  .btn-maturity .podium i, .btn-maturity .podium::before { animation: none; }\n  .btn-maturity { box-shadow: 0 12px 36px -10px rgba(124,92,255,.40); }\n  .btn-maturity::before { background-size: 100% 100%; } \/* spectre complet visible en statique *\/\n  \/* podium fig\u00e9 \u00e0 l'\u00e9tat final (les transforms de base cachent tout sinon) *\/\n  .btn-maturity .podium i { transform: scaleY(1); }\n  .btn-maturity .podium::before { transform: none; }\n}\n\n.link-arrow {\n  display: inline-flex; align-items: center; gap: 8px;\n  font-weight: 700; font-size: 15.5px; color: var(--p); text-decoration: none;\n}\n.link-arrow svg { transition: transform .2s ease; }\n.link-arrow:hover svg { transform: translateX(4px); }\n.link-arrow:hover { color: var(--a); }\n\n\/* ============================================================\n   NAV\n============================================================ *\/\n.nav {\n  position: fixed; inset: 0 0 auto 0; z-index: 100;\n  transition: background .3s ease, box-shadow .3s ease;\n}\n.nav-inner {\n  max-width: 1320px; margin: 0 auto; padding: 14px 28px;\n  display: flex; align-items: center; gap: 34px;\n}\n.nav-logo img { height: 34px; width: auto; filter: brightness(0) invert(1); transition: filter .3s ease; }\n.nav-links { display: flex; align-items: center; gap: 6px; margin-left: auto; }\n.nav-link {\n  display: flex; align-items: center; gap: 7px;\n  color: rgba(255,255,255,.88); text-decoration: none;\n  font-weight: 600; font-size: 15px; padding: 10px 14px; border-radius: 10px;\n  transition: color .2s ease, background .2s ease;\n  background: none; border: 0; cursor: pointer; font-family: var(--sans);\n}\n.nav-link:hover { color: #fff; background: rgba(255,255,255,.08); }\n.nav-toggle-symbol {\n  font-weight: 500; font-size: 16px; line-height: 1;\n  transition: transform .25s ease; display: inline-block;\n}\n.nav-item.open .nav-toggle-symbol { transform: rotate(45deg); }\n.nav-lang {\n  font-family: var(--mono); font-size: 11.5px; letter-spacing: .06em;\n  color: rgba(255,255,255,.65); padding: 7px 12px;\n  border: 1px solid rgba(255,255,255,.22); border-radius: 999px;\n  margin: 0 6px; white-space: nowrap; transition: color .3s ease, border-color .3s ease;\n}\n.nav-lang b { color: #fff; font-weight: 600; }\n.nav-cta { margin-left: 4px; padding: 12px 22px; font-size: 14.5px; }\n\n\/* \u00e9tat scroll\u00e9 : fond blanc *\/\n.nav.is-scrolled { background: rgba(255,255,255,.92); backdrop-filter: blur(14px); box-shadow: 0 1px 0 var(--border), var(--sh-sm); }\n.nav.is-scrolled .nav-logo img { filter: none; }\n.nav.is-scrolled .nav-link { color: var(--ink); }\n.nav.is-scrolled .nav-link:hover { color: var(--p); background: var(--pale2); }\n.nav.is-scrolled .nav-lang { color: var(--muted); border-color: var(--border); }\n.nav.is-scrolled .nav-lang b { color: var(--ink); }\n\n\/* dropdowns *\/\n.nav-item { position: relative; }\n.dropdown {\n  position: absolute; top: calc(100% + 12px); left: 50%; transform: translateX(-50%) translateY(8px);\n  background: #fff; border: 1px solid var(--border); border-radius: 18px;\n  box-shadow: 0 24px 60px rgba(10, 18, 64, .18);\n  padding: 28px; display: flex; gap: 36px;\n  opacity: 0; visibility: hidden; pointer-events: none;\n  transition: opacity .22s ease, transform .22s ease, visibility .22s;\n}\n.nav-item.open .dropdown { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0); }\n.dd-group { min-width: 185px; }\n.dd-tag {\n  font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase;\n  color: var(--faint); margin-bottom: 14px;\n}\n.dd-links { display: flex; flex-direction: column; gap: 3px; }\n.dd-links a {\n  color: var(--ink); text-decoration: none; font-size: 14.5px; font-weight: 600;\n  padding: 7px 10px; margin: 0 -10px; border-radius: 8px;\n  transition: background .15s ease, color .15s ease;\n}\n.dd-links a:hover { background: var(--pale2); color: var(--p); }\n.dd-links .dd-more { color: var(--a); margin-top: 6px; }\n.dd-desc {\n  width: 250px; background: var(--pale); border-radius: 14px; padding: 20px;\n  font-size: 13.5px; color: var(--muted); display: flex; flex-direction: column; gap: 14px;\n}\n.dd-desc .link-arrow { font-size: 14px; }\n\n\/* burger mobile *\/\n.nav-burger {\n  display: none; margin-left: auto; background: none; border: 0; cursor: pointer;\n  width: 44px; height: 44px; border-radius: 10px; position: relative;\n}\n.nav-burger span {\n  position: absolute; left: 11px; right: 11px; height: 2px; border-radius: 2px;\n  background: #fff; transition: transform .25s ease, opacity .2s ease, background .3s ease;\n}\n.nav.is-scrolled .nav-burger span, .nav.menu-open .nav-burger span { background: var(--ink); }\n.nav-burger span:nth-child(1) { top: 16px; }\n.nav-burger span:nth-child(2) { top: 22px; }\n.nav-burger span:nth-child(3) { top: 28px; }\n.nav.menu-open .nav-burger span:nth-child(1) { transform: translateY(6px) rotate(45deg); }\n.nav.menu-open .nav-burger span:nth-child(2) { opacity: 0; }\n.nav.menu-open .nav-burger span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }\n\n.mobile-menu {\n  display: none; position: fixed; inset: 62px 0 0 0; z-index: 99;\n  background: #fff; overflow-y: auto; padding: 24px 28px 48px;\n}\n.nav.menu-open ~ .mobile-menu { display: block; }\n.mm-group { border-bottom: 1px solid var(--border); padding: 14px 0; }\n.mm-group > .mm-title { font-weight: 700; font-size: 17px; padding: 8px 0; }\n.mm-links { display: flex; flex-direction: column; }\n.mm-links a { text-decoration: none; color: var(--muted); font-size: 15.5px; padding: 9px 0 9px 14px; }\n.mm-links a:active { color: var(--p); }\n.mobile-menu .btn { margin-top: 22px; width: 100%; justify-content: center; }\n\n\/* ============================================================\n   HERO\n============================================================ *\/\n.hero {\n  position: relative; min-height: 100svh; background: var(--dark);\n  display: flex; align-items: center; justify-content: center; overflow: hidden;\n}\n.hero canvas { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1.2s ease; }\n.hero canvas.on { opacity: 1; }\n.hero::after {\n  content: \"\"; position: absolute; left: -5%; right: -5%; bottom: -40px; height: 130px;\n  background: linear-gradient(180deg, rgba(255,255,255,0), #fafeff 55%, #fff);\n  filter: blur(15px); pointer-events: none; z-index: 2;\n}\n.hero-inner { position: relative; z-index: 3; text-align: center; padding: 140px 28px 170px; max-width: 1260px; }\n.hero h1 {\n  color: #fff; font-weight: 800; line-height: 1.12; letter-spacing: -0.02em;\n  font-size: clamp(36px, 4.7vw, 66px); text-wrap: balance;\n  \/* lisibilit\u00e9 sur le c\u0153ur clair du halo *\/\n  text-shadow: 0 2px 30px rgba(4, 7, 27, .60), 0 1px 4px rgba(4, 7, 27, .45);\n}\n\/* em du hero : blanc (lisible quel que soit l'\u00e9tat du halo\/souris),\n   l'accent lavande passe dans un glow autour des lettres *\/\n.hero h1 em {\n  color: #fff;\n  text-shadow:\n    0 0 22px rgba(145, 177, 255, .55),\n    0 0 44px rgba(145, 177, 255, .30),\n    0 2px 30px rgba(4, 7, 27, .60),\n    0 1px 4px rgba(4, 7, 27, .45);\n}\n.hero .lead {\n  color: rgba(255,255,255,.87); margin: 26px auto 0; max-width: 640px; font-size: 18px;\n  text-shadow: 0 1px 18px rgba(4, 7, 27, .55), 0 1px 3px rgba(4, 7, 27, .4);\n}\n.hero .btn { margin-top: 38px; }\n\n\/* ============================================================\n   PAGES INT\u00c9RIEURES\n============================================================ *\/\n.page-hero {\n  background:\n    radial-gradient(55% 75% at 88% -25%, rgba(145,177,255,.28), transparent 70%),\n    radial-gradient(45% 60% at 8% -15%, rgba(44,85,251,.12), transparent 70%),\n    var(--pale);\n  padding: 168px 0 72px;\n}\n.page-hero .crumb { font-family: var(--mono); font-size: 12px; color: var(--faint); margin-bottom: 20px; display: block; letter-spacing: .04em; }\n.page-hero .crumb a { color: var(--muted); text-decoration: none; }\n.page-hero .crumb a:hover { color: var(--p); }\n.page-hero h1 { font-size: clamp(34px, 4.2vw, 54px); font-weight: 800; letter-spacing: -0.02em; line-height: 1.08; text-wrap: balance; color: var(--ink); }\n.page-hero .lead { margin-top: 20px; }\n.page-hero .btn { margin-top: 30px; }\n.badges { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }\n.badge {\n  font-family: var(--mono); font-size: 12.5px; color: var(--p);\n  background: #fff; border: 1px solid var(--border); border-radius: 999px; padding: 8px 16px;\n}\n.check-list { display: grid; gap: 13px; padding: 0; list-style: none; }\n.check-list li { display: flex; gap: 12px; color: var(--muted); font-size: 15.5px; line-height: 1.55; }\n.check-list li::before {\n  content: \"\u2713\"; flex: 0 0 22px; height: 22px; border-radius: 7px;\n  display: grid; place-items: center; font-size: 12px; font-weight: 700;\n  background: var(--pale2); color: var(--p); margin-top: 2px;\n}\n.prose { max-width: 72ch; }\n.prose p + p { margin-top: 16px; }\n.prose h3 { margin: 32px 0 12px; }\n.prose { color: var(--muted); font-size: 16.5px; }\n.prose strong { color: var(--ink); }\n\n\/* ============================================================\n   SECTIONS\n============================================================ *\/\n\n\/* --- Services : 3 cards --- *\/\n.services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }\n.card {\n  background: #fff; border: 1px solid var(--border); border-radius: var(--radius-card);\n  padding: 32px 30px; display: flex; flex-direction: column; gap: 14px;\n  text-decoration: none;\n  transition: transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease, border-color .25s ease;\n}\n.card:hover { transform: translateY(-4px); box-shadow: var(--sh-hover); border-color: rgba(44,85,251,.35); }\n.card p { color: var(--muted); font-size: 15.5px; flex: 1; }\n.card .link-arrow { margin-top: 4px; }\n\n\/* --- Cards \u00ab facettes \u00bb du trio services (home + services, 2026-07-13) ---\n   Remplace les blocs froids : ar\u00eate spectrale au sommet (signature prisme),\n   picto par service dans une tuile d\u00e9grad\u00e9e, lueur d'angle ; au hover la\n   tuile s'embrase (d\u00e9grad\u00e9 + picto blanc) et l'ar\u00eate s'allume. *\/\n.card-svc { padding: 36px 32px 30px; gap: 16px; overflow: hidden; }\n.card-svc::before, .skill-card::before { \/* ar\u00eate de lumi\u00e8re spectrale *\/\n  content: \"\"; position: absolute; top: 0; left: 0; right: 0; height: 2.5px;\n  background: linear-gradient(90deg, var(--p), var(--a) 42%, var(--lav) 74%, #E14FF6);\n  opacity: .5; transition: opacity .3s ease;\n}\n.card-svc::after, .skill-card::after { \/* lueur d'angle haut-droite, PROPORTIONNELLE \u00e0 la carte\n  (une taille fixe lavait enti\u00e8rement les petites cartes, ex. \u00e9quipe d'\u00e0-propos) *\/\n  content: \"\"; position: absolute; inset: 0;\n  background: radial-gradient(circle at 100% 0, rgba(145,177,255,.20), transparent 46%);\n  pointer-events: none;\n}\n.card-svc h3 { font-size: 22px; }\n.card-svc:hover::before, .skill-card:hover::before { opacity: 1; }\n.svc-icon, .skill-icon {\n  width: 54px; height: 54px; border-radius: 14px; flex: 0 0 auto;\n  display: grid; place-items: center; margin-bottom: 4px;\n  background: linear-gradient(135deg, var(--pale2), #fff);\n  border: 1px solid var(--border); color: var(--p);\n  transition: background .3s ease, color .3s ease, transform .3s ease,\n              border-color .3s ease, box-shadow .3s ease;\n}\n.svc-icon svg, .skill-icon svg { width: 25px; height: 25px; display: block; }\n.card-svc:hover .svc-icon, .skill-card:hover .skill-icon {\n  background: linear-gradient(135deg, var(--p), var(--a));\n  color: #fff; border-color: transparent;\n  transform: scale(1.07) rotate(-4deg);\n  box-shadow: 0 10px 24px rgba(25, 41, 221, .30);\n}\n\/* m\u00e9ta formation : dur\u00e9e + niveau (+ tag populaire) *\/\n.fmeta { display: flex; flex-wrap: wrap; gap: 7px; margin: -2px 0 2px; }\n.fmeta span {\n  font-family: var(--mono); font-size: 11.5px; letter-spacing: .02em;\n  color: var(--p); background: var(--pale); border: 1px solid var(--border);\n  border-radius: 999px; padding: 4px 11px;\n}\n.fmeta .hot { color: #fff; background: var(--p); border-color: var(--p); }\n\/* bulle de d\u00e9tail formation (hover) *\/\n.fpop {\n  position: absolute; left: -1px; right: -1px; top: -1px; z-index: 6;\n  min-height: calc(100% + 2px); \/* couvre toute la card (les cards ont grandi avec les ic\u00f4nes) *\/\n  background: #fff; border: 1.5px solid rgba(44,85,251,.35); border-radius: var(--radius-card);\n  box-shadow: 0 26px 60px rgba(10,18,64,.22);\n  padding: 24px; display: flex; flex-direction: column; gap: 12px;\n  opacity: 0; visibility: hidden; transform: translateY(6px);\n  transition: opacity .2s ease, transform .2s ease, visibility .2s;\n  pointer-events: none;\n}\n.card:hover .fpop, .card:focus-within .fpop {\n  opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto;\n}\n.fpop strong { font-size: 17px; letter-spacing: -0.01em; }\n.fpop .fformat { font-size: 12.5px; color: var(--faint); font-family: var(--mono); line-height: 1.5; }\n.fpop .check-list { gap: 9px; }\n.fpop .check-list li { font-size: 13.5px; }\n.fpop .btn { padding: 11px 18px; font-size: 14px; margin-top: auto; align-self: flex-start; } \/* bouton ancr\u00e9 en bas de la bulle *\/\n@media (hover: none) { .fpop { display: none; } }\n\n\/* --- Ic\u00f4nes des cards formations (logo outil ou pictogramme th\u00e8me) --- *\/\n.ficon {\n  width: 48px; height: 48px; border-radius: 12px; flex: 0 0 auto;\n  display: grid; place-items: center; margin-bottom: 2px;\n  background: var(--pale); border: 1px solid var(--border);\n}\n.ficon svg { width: 26px; height: 26px; display: block; }\n.ficon-pia { color: var(--p); }        \/* pictos maison : bleu charte *\/\n.ficon-openai { color: #0A0F2E; }      \/* knot OpenAI : encre *\/\n.ficon-hero { width: 56px; height: 56px; background: #fff; margin-bottom: 20px; }\n.ficon-hero svg { width: 30px; height: 30px; }\n\n\/* --- Chips dur\u00e9e \/ niveau : ic\u00f4nes int\u00e9gr\u00e9es, scan visuel --- *\/\n.fmeta span { display: inline-flex; align-items: center; gap: 6px; }\n.fmeta span::before {\n  content: \"\"; width: 11px; height: 11px; flex: 0 0 auto; background: currentColor;\n  -webkit-mask: var(--chipicon) center \/ contain no-repeat;\n  mask: var(--chipicon) center \/ contain no-repeat;\n}\n\/* chip 1 = dur\u00e9e (horloge) *\/\n.fmeta span:nth-child(1) { --chipicon: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='8.6'\/%3E%3Cpath d='M12 7.4v4.6l3 1.9'\/%3E%3C\/svg%3E\"); }\n\/* chip 2 = niveau (jauge) : fond soutenu pour se distinguer d'un \u0153il *\/\n.fmeta span:nth-child(2) {\n  --chipicon: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='black'%3E%3Crect x='3' y='14' width='4.6' height='7' rx='1'\/%3E%3Crect x='9.7' y='9' width='4.6' height='12' rx='1'\/%3E%3Crect x='16.4' y='4' width='4.6' height='17' rx='1'\/%3E%3C\/svg%3E\");\n  background: var(--pale2); border-color: rgba(44,85,251,.18);\n}\n\n\/* --- \u00ab La plus demand\u00e9e \u00bb : \u00e9toile discr\u00e8te en coin de card --- *\/\n.card { position: relative; }\n.fstar {\n  position: absolute; top: 16px; right: 16px; z-index: 2;\n  width: 30px; height: 30px; border-radius: 999px;\n  display: grid; place-items: center; cursor: help;\n  background: #fff; border: 1px solid var(--border); box-shadow: var(--sh-sm);\n  color: #F5A524;\n}\n.fstar svg { width: 15px; height: 15px; display: block; }\n.fpop .fstar { box-shadow: none; }\n\n\/* --- Valeur ajout\u00e9e : 4 cards num\u00e9rot\u00e9es --- *\/\n.bg-pale { background: var(--pale); }\n.bg-pale2 { background: var(--pale2); }\n.valeur-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }\n.valeur-card {\n  background: #fff; border: 1px solid var(--border); border-radius: var(--radius-card);\n  padding: 30px 26px;\n  transition: transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease;\n}\n.valeur-card:hover { transform: translateY(-4px); box-shadow: var(--sh-hover); }\n.valeur-num {\n  font-family: var(--mono); font-weight: 500; font-size: 15px;\n  background: linear-gradient(120deg, var(--p), var(--a) 55%, var(--lav));\n  -webkit-background-clip: text; background-clip: text; color: transparent;\n  margin-bottom: 18px; display: block;\n}\n.valeur-card h3 { font-size: 19px; margin-bottom: 10px; }\n.valeur-card p { color: var(--muted); font-size: 14.5px; }\n\n\/* --- Split (formation \/ audit \/ int\u00e9gration \/ cabinet) --- *\/\n.split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }\n.split.rev .split-media { order: -1; }\n.split-media img { border-radius: 20px; box-shadow: var(--sh-md); width: 100%; object-fit: cover; }\n.split .btn { margin-top: 30px; }\n.split p + p { margin-top: 14px; }\n.split .lead { font-size: 16.5px; }\n\n\/* --- \u00c9quipes apprennent : 3 cards ic\u00f4nes \u2014 align\u00e9es sur les \u00ab facettes \u00bb\n   du trio services (ar\u00eate spectrale, tuile p\u00e2le -> embras\u00e9e au hover, lueur\n   d'angle : r\u00e8gles partag\u00e9es avec .card-svc\/.svc-icon plus haut) --- *\/\n.skills-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }\n.skill-card {\n  position: relative; overflow: hidden;\n  background: #fff; border: 1px solid var(--border); border-radius: var(--radius-card);\n  padding: 36px 32px 30px;\n  transition: transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease, border-color .25s ease;\n}\n.skill-card:hover { transform: translateY(-4px); box-shadow: var(--sh-hover); border-color: rgba(44,85,251,.35); }\n.skill-icon { margin-bottom: 20px; }\n.skill-card h3 { font-size: 19px; margin-bottom: 10px; }\n.skill-card p { color: var(--muted); font-size: 14.5px; }\n\n\/* --- Outils : bandeau de chips (centr\u00e9, logos officiels 2026-07-13) --- *\/\n.tools-band { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }\n.tool-chip {\n  display: inline-flex; align-items: center; gap: 9px;\n  font-family: var(--mono); font-size: 14px; font-weight: 500; color: var(--p);\n  background: #fff; border: 1px solid var(--border); border-radius: 999px;\n  padding: 11px 20px; transition: border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;\n}\n.tool-chip img { width: 17px; height: 17px; display: block; flex: 0 0 auto; }\n.band-break { flex-basis: 100%; height: 0; } \/* rupture de ligne : \u00e9quilibre 5 + 4 *\/\n.tool-chip:hover { border-color: rgba(44,85,251,.4); background: var(--pale2); transform: translateY(-2px); box-shadow: var(--sh-sm); }\n\n\/* --- Outils : grille 3\u00d73 (h\u00e9rit\u00e9e, plus utilis\u00e9e sur la home) --- *\/\n.tools-grid {\n  display: grid; grid-template-columns: repeat(3, 1fr);\n  border: 1px solid var(--border); border-radius: var(--radius-card); overflow: hidden;\n}\n.tool-cell {\n  padding: 26px 26px 28px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border);\n  transition: background .2s ease;\n}\n.tool-cell:nth-child(3n) { border-right: 0; }\n.tool-cell:nth-child(n+7) { border-bottom: 0; }\n.tool-cell:hover { background: var(--pale2); }\n.tool-name { font-family: var(--mono); font-size: 14px; font-weight: 500; color: var(--p); margin-bottom: 10px; }\n.tool-desc { font-size: 13.5px; color: var(--muted); line-height: 1.55; }\n.tools-footer { margin-top: 32px; }\n\n\/* --- CTA interm\u00e9diaire (panneau dark) --- *\/\n.cta-panel {\n  position: relative; overflow: hidden;\n  background: var(--dark); border-radius: 28px;\n  padding: 84px 40px; text-align: center; color: #fff;\n}\n.cta-panel canvas {\n  position: absolute; inset: 0; width: 100%; height: 100%;\n  opacity: 0; transition: opacity 1.2s ease;\n}\n.cta-panel canvas.on { opacity: 1; }\n.cta-panel > *:not(canvas) { position: relative; z-index: 2; }\n.cta-panel h2 { color: #fff; }\n\/* m\u00eame recette que le hero : l'em accent se noyait dans le halo -> blanc + lueur lavande *\/\n.cta-panel h2 em {\n  color: #fff;\n  text-shadow: 0 0 22px rgba(145,177,255,.55), 0 0 44px rgba(145,177,255,.30),\n               0 2px 30px rgba(4,7,27,.60), 0 1px 4px rgba(4,7,27,.45);\n}\n.cta-panel p { color: rgba(255,255,255,.82); margin: 16px auto 0; max-width: 56ch; }\n.cta-panel .btn { margin-top: 34px; }\n\n\/* --- M\u00e9thodologie : timeline 4 \u00e9tapes --- *\/\n.method-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; position: relative; }\n.method-step { position: relative; padding-top: 26px; }\n.method-step::before {\n  content: \"\"; position: absolute; top: 0; left: 0; right: -32px; height: 2px;\n  background: linear-gradient(90deg, var(--a), var(--lav));\n  opacity: .35;\n}\n.method-step:last-child::before { right: 0; }\n.method-step::after {\n  content: \"\"; position: absolute; top: -4px; left: 0; width: 10px; height: 10px;\n  border-radius: 50%; background: var(--a);\n  box-shadow: 0 0 0 5px rgba(44,85,251,.15);\n}\n.method-num { font-family: var(--mono); font-size: 13px; color: var(--a); display: block; margin-bottom: 12px; }\n.method-step h3 { font-size: 20px; margin-bottom: 10px; }\n.method-step p { color: var(--muted); font-size: 14.5px; }\n\n\/* --- FAQ --- *\/\n.faq-wrap { max-width: 820px; margin: 0 auto; }\n.faq-item { border-bottom: 1px solid var(--border); }\n.faq-item summary {\n  list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 20px;\n  padding: 22px 4px; font-weight: 700; font-size: 17px;\n  transition: color .2s ease;\n}\n.faq-item summary::-webkit-details-marker { display: none; }\n.faq-item summary:hover { color: var(--p); }\n.faq-plus {\n  flex: 0 0 auto; width: 26px; height: 26px; border-radius: 8px;\n  position: relative; border: 1.5px solid var(--border);\n  transition: transform .25s ease, background .2s ease, border-color .2s ease;\n}\n.faq-plus::before, .faq-plus::after {\n  content: \"\"; position: absolute; top: 50%; left: 50%;\n  background: var(--a); border-radius: 1px;\n  transition: background .2s ease;\n}\n.faq-plus::before { width: 11px; height: 2px; transform: translate(-50%, -50%); }\n.faq-plus::after { width: 2px; height: 11px; transform: translate(-50%, -50%); }\n.faq-item[open] .faq-plus { transform: rotate(45deg); background: var(--p); border-color: var(--p); }\n.faq-item[open] .faq-plus::before, .faq-item[open] .faq-plus::after { background: #fff; }\n.faq-item .faq-a { padding: 0 44px 24px 4px; color: var(--muted); font-size: 15.5px; }\n\n\/* --- Newsletters --- *\/\n.news-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 48px; }\n.news-count {\n  font-family: var(--mono); font-size: 12.5px; color: var(--p);\n  background: #fff; border: 1px solid var(--border); border-radius: 999px; padding: 9px 16px;\n  white-space: nowrap;\n}\n.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }\n.news-card {\n  background: #fff; border: 1px solid var(--border); border-radius: var(--radius-card);\n  padding: 28px; text-decoration: none; display: flex; flex-direction: column; gap: 14px;\n  transition: transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease, border-color .25s ease;\n}\n.news-card:hover { transform: translateY(-4px); box-shadow: var(--sh-hover); border-color: rgba(44,85,251,.35); }\n.news-badge {\n  font-family: var(--mono); font-size: 12px; color: var(--a);\n  background: var(--pale2); border-radius: 8px; padding: 6px 10px; align-self: flex-start;\n}\n.news-card h3 { font-size: 19px; }\n.news-card p { color: var(--muted); font-size: 14.5px; flex: 1; }\n\n\/* Cards avec vignette (visuels des \u00e9ditions, servis depuis prismia.ch) *\/\n.news-card.has-thumb { padding: 0; overflow: hidden; gap: 0; }\n.news-thumb { display: block; overflow: hidden; background: var(--pale2); aspect-ratio: 1 \/ 1; }\n.news-thumb img {\n  width: 100%; height: 100%; object-fit: cover; display: block;\n  transition: transform .45s cubic-bezier(.2,.7,.3,1);\n}\n.news-card:hover .news-thumb img { transform: scale(1.05); }\n.news-body { display: flex; flex-direction: column; gap: 14px; padding: 20px 22px 24px; flex: 1; }\n.news-meta-line { display: flex; align-items: center; justify-content: space-between; gap: 10px; }\n.news-date { font-family: var(--mono); font-size: 12px; color: var(--faint); white-space: nowrap; }\n\n\/* Grille archive : les 24 \u00e9ditions sur la page newsletters *\/\n.news-grid.news-archive { grid-template-columns: repeat(4, 1fr); gap: 20px; }\n.news-archive .news-body { padding: 15px 16px 17px; gap: 0; }\n@media (max-width: 1024px) { .news-grid.news-archive { grid-template-columns: repeat(3, 1fr); } }\n@media (max-width: 820px) { .news-grid.news-archive { grid-template-columns: repeat(2, 1fr); gap: 14px; } }\n\n\/* Popover sommaire au survol des cards newsletters (m\u00eame esprit que .fpop formations) *\/\n.news-card.has-thumb { position: relative; }\n.npop {\n  position: absolute; inset: -1px; z-index: 6; overflow: hidden;\n  display: flex; flex-direction: column; gap: 10px;\n  background: #fff; border: 1px solid rgba(44,85,251,.35); border-radius: var(--radius-card);\n  padding: 18px 18px 15px; box-shadow: var(--sh-hover);\n  opacity: 0; visibility: hidden; transform: translateY(4px);\n  transition: opacity .22s ease, transform .22s ease, visibility 0s linear .22s;\n}\n.news-card:hover .npop, .news-card:focus-visible .npop {\n  opacity: 1; visibility: visible; transform: translateY(0);\n  transition: opacity .22s ease, transform .22s ease;\n}\n.npop-t { font-family: var(--mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--a); }\n.npop-list { display: flex; flex-direction: column; gap: 5px; }\n.npop-list > span { display: block; font-size: 11px; line-height: 1.38; color: var(--muted); padding-left: 12px; position: relative; }\n.npop-list > span::before {\n  content: \"\"; position: absolute; left: 0; top: 5px; width: 5px; height: 5px;\n  border-radius: 2px; background: var(--lav);\n}\n.npop-list > .npop-more { color: var(--faint); font-style: italic; }\n.npop-list > .npop-more::before { background: transparent; }\n@media (hover: none) { .npop { display: none; } }\n\n\/* ============================================================\n   FOOTER (\u00e9quivalent hero : dark + canvas)\n============================================================ *\/\n.footer {\n  position: relative; background: var(--dark); color: #fff; overflow: hidden;\n  margin-top: 120px;\n}\n.footer::before {\n  content: \"\"; position: absolute; left: -5%; right: -5%; top: -40px; height: 130px; z-index: 2;\n  background: linear-gradient(0deg, rgba(255,255,255,0), #fafeff 55%, #fff);\n  filter: blur(15px); pointer-events: none;\n}\n\/* voile sombre : assombrit l\u00e9g\u00e8rement tout le footer (lisibilit\u00e9 sur le halo) *\/\n.footer::after {\n  content: \"\"; position: absolute; inset: 0; z-index: 1; pointer-events: none;\n  background: linear-gradient(180deg, rgba(4,7,27,.42) 0%, rgba(4,7,27,.18) 45%, rgba(4,7,27,.55) 100%);\n}\n.footer canvas { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1.2s ease; }\n.footer canvas.on { opacity: 1; }\n.footer-inner { position: relative; z-index: 3; padding: 150px 0 0; }\n\n.footer-nl { max-width: 640px; }\n.footer-nl h2 { color: #fff; font-size: clamp(26px, 3vw, 36px); }\n.footer-nl h2 em { color: var(--lav); }\n.nl-form { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }\n.nl-form input[type=\"email\"] {\n  flex: 1 1 280px; font-family: var(--sans); font-size: 15px; color: #fff;\n  background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.22);\n  border-radius: var(--radius-btn); padding: 14px 18px; outline: none;\n  transition: border-color .2s ease, background .2s ease;\n}\n.nl-form input[type=\"email\"]::placeholder { color: rgba(255,255,255,.5); }\n.nl-form input[type=\"email\"]:focus { border-color: var(--lav); background: rgba(255,255,255,.12); }\n.nl-consent {\n  display: flex; gap: 10px; align-items: flex-start; margin-top: 16px;\n  font-size: 13px; color: rgba(255,255,255,.65); max-width: 560px;\n}\n.nl-consent a { color: #fff; }\n.nl-consent input { margin-top: 3px; accent-color: var(--a); width: 18px; height: 18px; flex: 0 0 auto; } \/* cible tactile confortable *\/\n\n.footer-cols {\n  display: grid; grid-template-columns: repeat(5, 1fr) 1.3fr; gap: 32px;\n  margin-top: 72px; padding-top: 48px; border-top: 1px solid rgba(255,255,255,.12);\n}\n.fcol .dd-tag { color: var(--lav); opacity: .85; }\n.fcol a {\n  display: block; color: rgba(255,255,255,.82); text-decoration: none;\n  font-size: 14.5px; padding: 5px 0; transition: color .2s ease;\n}\n.fcol a:hover { color: var(--lav); }\n.fcontact { display: flex; flex-direction: column; gap: 10px; font-size: 14.5px; color: rgba(255,255,255,.85); }\n.fcontact a { color: rgba(255,255,255,.85); text-decoration: none; }\n.fcontact a:hover { color: var(--lav); }\n.fcontact .btn { margin-top: 14px; align-self: flex-start; }\n.footer .btn-light, .fcontact a.btn-light { color: var(--p); }\n\n.footer-bottom {\n  display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap;\n  margin-top: 56px; padding: 26px 0 34px; border-top: 1px solid rgba(255,255,255,.12);\n}\n.footer-bottom img { height: 30px; width: auto; filter: brightness(0) invert(1); opacity: .92; }\n.footer-bottom .copy { font-size: 12.5px; color: rgba(255,255,255,.55); }\n\n\/* --- Variantes de grilles par page (remplacent des styles inline NON responsives) --- *\/\n.services-grid.grid-2cols { grid-template-columns: 1fr 1fr; }\n.valeur-grid.valeur-3 { grid-template-columns: repeat(3, 1fr); }\n.check-list.check-2col { display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; }\n.form-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }\n@media (max-width: 1080px) {\n  .services-grid.grid-2cols, .valeur-grid.valeur-3 { grid-template-columns: 1fr 1fr; }\n}\n@media (max-width: 640px) {\n  .services-grid.grid-2cols, .valeur-grid.valeur-3, .check-list.check-2col, .form-grid-2 { grid-template-columns: 1fr; }\n}\n\n\/* ============================================================\n   RESPONSIVE\n============================================================ *\/\n@media (max-width: 1080px) {\n  .section { padding: 88px 0; }\n  .services-grid, .skills-grid { grid-template-columns: 1fr 1fr; }\n  .valeur-grid { grid-template-columns: 1fr 1fr; row-gap: 24px; }\n  .method-grid { grid-template-columns: 1fr 1fr; row-gap: 44px; }\n  .method-step::before { right: 0; }\n  .footer-cols { grid-template-columns: repeat(3, 1fr); }\n  .fcontact { grid-column: span 3; }\n}\n\n@media (max-width: 900px) {\n  .nav-links { display: none; }\n  .nav-burger { display: block; }\n  .split { grid-template-columns: 1fr; gap: 36px; }\n  .split-media { order: -1; }\n  .tools-grid { grid-template-columns: 1fr 1fr; }\n  .tool-cell:nth-child(3n) { border-right: 1px solid var(--border); }\n  .tool-cell:nth-child(2n) { border-right: 0; }\n  .tool-cell:nth-child(n+7) { border-bottom: 1px solid var(--border); }\n  .tool-cell:nth-child(n+8) { border-bottom: 0; }\n}\n\n@media (max-width: 640px) {\n  body { font-size: 16px; }\n  .section { padding: 64px 0; }\n  .container { padding: 0 20px; }\n  .section-head { margin-bottom: 36px; }\n  .services-grid, .skills-grid, .valeur-grid, .news-grid, .method-grid { grid-template-columns: 1fr; }\n  .tools-grid { grid-template-columns: 1fr; }\n  .tool-cell { border-right: 0 !important; border-bottom: 1px solid var(--border) !important; }\n  .tool-cell:last-child { border-bottom: 0 !important; }\n  .cta-panel { padding: 60px 24px; border-radius: 20px; }\n  .hero-inner { padding: 120px 20px 150px; }\n  .footer-cols { grid-template-columns: 1fr 1fr; }\n  .fcontact { grid-column: span 2; }\n  .footer-inner { padding-top: 120px; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n  * { transition: none !important; scroll-behavior: auto !important; }\n}\n\n\/* ---------- Reveals au scroll + entr\u00e9e hero (2026-07-13) ----------\n   Classes pos\u00e9es par app.js (z\u00e9ro HTML modifi\u00e9 ; sans JS rien n'est masqu\u00e9).\n   .rv est retir\u00e9e par app.js en fin de transition : les hovers des cards\n   (transform) reprennent leurs droits, aucune collision de cascade. *\/\n.rv { opacity: 0; transform: translateY(22px); }\n.rv.in {\n  opacity: 1; transform: translateY(0);\n  transition: opacity .65s ease, transform .75s cubic-bezier(.16, 1, .3, 1);\n  transition-delay: var(--rvd, 0s);\n}\n@media (prefers-reduced-motion: reduce) { .rv { opacity: 1; transform: none; } }\n\/* ============================================================\n   ADAPTATIONS ELEMENTOR (pages de test r\u00e9plication maquette v2)\n   Elementor 4.x pilote les containers via des variables PHYSIQUES\n   (--display, --padding-top\u2026) pos\u00e9es par un CSS g\u00e9n\u00e9r\u00e9 par \u00e9l\u00e9ment\n   (sp\u00e9cificit\u00e9 0,3,0). On gagne avec des propri\u00e9t\u00e9s simples plac\u00e9es\n   apr\u00e8s dans l'ordre, + !important sur le display des grilles.\n============================================================ *\/\n.e-con.pia-wrap { padding: 0; gap: 0; max-width: 100%; --width: 100%; --content-width: 100%; }\n.pia-wrap .elementor-widget { margin-block-end: 0; width: 100%; }\n.elementor-widget-html .elementor-widget-container { width: 100%; }\n.e-con.section { max-width: 100%; --width: 100%; --content-width: 100%; gap: 0; }\n.e-con.container { width: 100%; max-width: 1200px; margin-inline: auto; gap: 0; }\n.e-con.services-grid, .e-con.method-grid, .e-con.valeur-grid { display: grid !important; padding: 0; width: 100%; max-width: 100%; }\na.e-con.card { display: flex !important; }\n.e-con.card, .e-con.valeur-card, .e-con.method-step { width: 100%; max-width: 100%; }\n.e-con.method-step { padding: 26px 0 0 0; }\n.e-con.valeur-card { padding: 30px 26px; }\n.card .e-con-inner { display: flex; flex-direction: column; flex: 1; width: 100%; max-width: 100%; }\n.valeur-card .e-con-inner, .method-step .e-con-inner { width: 100%; max-width: 100%; }\n.card .elementor-widget-text-editor { display: flex; flex: 1; }\n.card .elementor-widget-text-editor .elementor-widget-container { display: flex; flex-direction: column; gap: 14px; flex: 1; width: 100%; }\n.valeur-card .elementor-widget-container, .method-step .elementor-widget-container { width: 100%; }\n.elementor-widget-text-editor h2, .elementor-widget-text-editor h3, .elementor-widget-text-editor p { margin: 0; }\n.section.pt0 { padding-top: 0; }\n.e-con.section.pt0 { padding-top: 0 !important; }\nbody.admin-bar .nav { top: 32px; }\nbody.admin-bar .mobile-menu { inset: 94px 0 0 0; }\nh2,h3,.hero h1{margin:0}\n.hero-inner{margin:0 auto}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-64f2f16 elementor-widget elementor-widget-html\" data-id=\"64f2f16\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,600;0,700;0,800;1,700&family=Geist+Mono:wght@500&display=swap\" rel=\"stylesheet\">\n\n<header class=\"nav\" id=\"nav\" data-solid>\n  <div class=\"nav-inner\">\n    <a href=\"https:\/\/www.prismia.ch\/en\/\" class=\"nav-logo\" aria-label=\"PrismIA, home\">\n      <img decoding=\"async\" src=\"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PRISMIA_logo_couleur_20241105.svg\" alt=\"PrismIA\">\n    <\/a>\n\n    <nav class=\"nav-links\" aria-label=\"Main navigation\">\n      <div class=\"nav-item\" data-dd>\n        <button class=\"nav-link\" aria-expanded=\"false\">Services <span class=\"nav-toggle-symbol\">+<\/span><\/button>\n        <div class=\"dropdown\">\n          <div class=\"dd-group\">\n            <div class=\"dd-tag\">What we do<\/div>\n            <div class=\"dd-links\">\n              <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">AI training<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/audit-consulting\/\">Audit &amp; consulting<\/a><a href=\"https:\/\/www.prismia.ch\/en\/audit-consulting\/journey-to-ai\/\" class=\"dd-sub\">Journey to AI&nbsp;<span class=\"nav-star\" aria-hidden=\"true\">\u2605<\/span><\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/integration\/\">Integration<\/a>\n              <a class=\"dd-more\" href=\"https:\/\/www.prismia.ch\/en\/services\/\">All our services \u2192<\/a>\n            <\/div>\n          <\/div>\n          <div class=\"dd-group\">\n            <div class=\"dd-tag\">AI training<\/div>\n            <div class=\"dd-links\">\n              <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">AI Initiate<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">C-Level Coaching<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">Microsoft Copilot Advanced&nbsp;<span class=\"nav-star\" aria-hidden=\"true\">\u2605<\/span><\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/formation\/chatgpt-advanced\/\">ChatGPT Advanced<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">Claude Advanced<\/a>\n              <a class=\"dd-more\" href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">All our training courses \u2192<\/a>\n            <\/div>\n          <\/div>\n          <div class=\"dd-group\">\n            <div class=\"dd-tag\">Turnkey solutions<\/div>\n            <div class=\"dd-links\">\n              <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/voice-ai-agent\/\">Voice AI<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/advanced-local-transcription\/\">Local Transcription<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/veille-ia-agentique\/\">AI-augmented sector watch<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/newsletter-augmentee\/\">Augmented Newsletter<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/anonymisation-donnees\/\">AI Anonymisation<\/a>\n              <a class=\"dd-more\" href=\"https:\/\/www.prismia.ch\/en\/solutions\/\">All our solutions \u2192<\/a>\n            <\/div>\n          <\/div>\n          <div class=\"dd-desc\">\n            <span>PrismIA is an AI consulting firm and training organisation based in Geneva. Strategic advice and hands-on training for Swiss companies.<\/span>\n            <a class=\"link-arrow\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Book a free 30-minute consultation\n              <svg width=\"15\" height=\"15\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n            <\/a>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <a class=\"nav-link\" href=\"https:\/\/www.prismia.ch\/en\/newsletter\/\">Newsletter<\/a>\n\n      <div class=\"nav-item\" data-dd>\n        <button class=\"nav-link\" aria-expanded=\"false\">Our Lab <span class=\"nav-toggle-symbol\">+<\/span><\/button>\n        <div class=\"dropdown\">\n          <div class=\"dd-group\">\n            <div class=\"dd-tag\">Free tools<\/div>\n            <div class=\"dd-links\">\n              <a href=\"https:\/\/www.prismia.ch\/en\/local-pii-filter\/\">Local PII Filter<\/a>\n              <a href=\"https:\/\/www.prismia.ch\/en\/bullshitometer\/\">Bullshitometer<\/a>\n            <\/div>\n          <\/div>\n          <div class=\"dd-desc\">\n            <span>Our interactive tools are designed to help you explore AI safely. Try them for free, straight from your browser.<\/span>\n            <a class=\"link-arrow\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Discuss a custom project\n              <svg width=\"15\" height=\"15\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n            <\/a>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <a class=\"nav-link\" href=\"https:\/\/www.prismia.ch\/en\/case-studies\/\">Case studies<\/a><a class=\"nav-link\" href=\"https:\/\/www.prismia.ch\/en\/about-us\/\">About us<\/a>\n      <span class=\"nav-lang\"><b>EN<\/b> \/ FR<\/span>\n      <a class=\"btn btn-light nav-cta\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Contact us<\/a>\n    <\/nav>\n\n    <button class=\"nav-burger\" id=\"burger\" aria-label=\"Menu\" aria-expanded=\"false\">\n      <span><\/span><span><\/span><span><\/span>\n    <\/button>\n  <\/div>\n<\/header>\n\n<div class=\"mobile-menu\" id=\"mobileMenu\">\n  <div class=\"mm-group\">\n    <div class=\"mm-title\">Services<\/div>\n    <div class=\"mm-links\">\n      <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">AI training<\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/audit-consulting\/\">Audit &amp; consulting<\/a><a href=\"https:\/\/www.prismia.ch\/en\/audit-consulting\/journey-to-ai\/\" class=\"dd-sub\">Journey to AI&nbsp;<span class=\"nav-star\" aria-hidden=\"true\">\u2605<\/span><\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/integration\/\">Integration<\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/\">Turnkey solutions<\/a>\n    <\/div>\n  <\/div>\n  <div class=\"mm-group\">\n    <div class=\"mm-title\">Our Lab<\/div>\n    <div class=\"mm-links\">\n      <a href=\"https:\/\/www.prismia.ch\/en\/local-pii-filter\/\">Local PII Filter<\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/bullshitometer\/\">Bullshitometer<\/a>\n    <\/div>\n  <\/div>\n  <div class=\"mm-group\">\n    <div class=\"mm-links\">\n      <a href=\"https:\/\/www.prismia.ch\/en\/newsletter\/\">Newsletter<\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/case-studies\/\">Case studies<\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/about-us\/\">About us<\/a>\n    <\/div>\n  <\/div>\n  <a class=\"btn btn-primary\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Contact us<\/a>\n<\/div>\n<script>\n(function(){var L=document.querySelectorAll('.nav-lang');if(!L.length)return;var cur=(document.documentElement.lang||'fr').slice(0,2).toLowerCase();var o=cur==='en'?'fr':'en';var alt=document.querySelector('link[rel=\"alternate\"][hreflang^=\"'+o+'\"]');if(!alt)return;L.forEach(function(e){e.innerHTML='<b>'+cur.toUpperCase()+'<\/b> \/ <a href=\"'+alt.href+'\" hreflang=\"'+o+'\" style=\"color:inherit;text-decoration:none\">'+o.toUpperCase()+'<\/a>';});})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ad05b81 e-flex e-con-full pia-wrap pia-hero e-con e-parent\" data-id=\"ad05b81\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-05f37e0 elementor-widget elementor-widget-html\" data-id=\"05f37e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"page-hero\">\n  <div class=\"container\">\n    <span class=\"crumb\"><a href=\"https:\/\/www.prismia.ch\/en\/\">Home<\/a> \/ Services \/ Integration<\/span>\n    <h1>Integration of <em>AI solutions<\/em><\/h1>\n    <p class=\"lead\">Bring your AI projects to life. Our integration service supports you through every step of the way, ensuring your new solutions are high-performing, secure and fit in with both your environment and your objectives.<\/p>\n    <a class=\"btn btn-primary\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Let's talk about your project\n      <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n    <\/a>\n  <\/div>\n<\/section>\n\n<section class=\"section\">\n  <div class=\"container\">\n    <div class=\"split rev\">\n      <div>\n        <span class=\"overline\">Our approach<\/span>\n        <h2>Start small, deploy <em>at scale<\/em><\/h2>\n        <p class=\"lead\" style=\"margin-top:18px\">AI integration means deploying, securing and driving the adoption of artificial intelligence solutions across your business processes. PrismIA supports you from proof of concept to production: architecture choices, development or configuration, data security, team training and maintenance.<\/p>\n        <p style=\"margin-top:14px\">From automating business processes to improving customer experience and enhancing data management, our expertise ensures smooth and secure integration so you can fully harness the power of AI without any compromises.<\/p>\n        <ul class=\"check-list\" style=\"margin-top:22px\">\n          <li>A first use case validated under real conditions (MVP)<\/li>\n          <li>Smooth and secure integration, without compromise<\/li>\n          <li>Your teams trained and supported at every step<\/li>\n        <\/ul>\n      <\/div>\n      <div class=\"split-media\">\n        <img decoding=\"async\" src=\"https:\/\/www.prismia.ch\/wp-content\/uploads\/2026\/07\/integration-approche.webp\" alt=\"Cyril, PrismIA tech lead, deploys an AI integration in a Geneva office\" loading=\"lazy\">\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-807d8b6 e-flex e-con-full pia-wrap pia-intro e-con e-parent\" data-id=\"807d8b6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f081059 elementor-widget elementor-widget-html\" data-id=\"f081059\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"section bg-pale\">\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <span class=\"overline\">Services<\/span>\n      <h2>Our integration <em>services<\/em><\/h2>\n    <\/div>\n\n    <div class=\"services-grid grid-2cols\">\n      <div class=\"card card-svc\">\n        <h3>Integration and deployment<\/h3>\n        <p>We design the AI architecture suited to your context, generative or traditional, then integrate it into your existing business systems. From development to production, we manage the deployment end to end.<\/p>\n        <ul class=\"check-list\">\n          <li>AI architecture and infrastructure (generative \/ traditional)<\/li>\n          <li>Model development and training<\/li>\n          <li>Integrating AI into business systems<\/li>\n          <li>Managing AI model deployments<\/li>\n        <\/ul>\n      <\/div>\n      <div class=\"card card-svc\">\n        <h3>Security<\/h3>\n        <p>We secure training and production data, prevent risky uses and audit model compliance. Bias and ethical drift management is built in from the design stage.<\/p>\n        <ul class=\"check-list\">\n          <li>Securing training \/ production data<\/li>\n          <li>Setting up attack prevention measures<\/li>\n          <li>Model compliance audit<\/li>\n          <li>Setting up bias and ethical drift management processes<\/li>\n        <\/ul>\n      <\/div>\n      <div class=\"card card-svc\">\n        <h3>Change management<\/h3>\n        <p>A solution only creates value if it is adopted. We train your teams, document usage and support change to embed AI into the organisation's daily life.<\/p>\n        <ul class=\"check-list\">\n          <li>Training internal teams<\/li>\n          <li>Communication and documentation<\/li>\n        <\/ul>\n      <\/div>\n      <div class=\"card card-svc\">\n        <h3>Maintenance and development<\/h3>\n        <p>After go-live, we handle system monitoring, support and updates so your AI solutions stay high-performing and reliable over time.<\/p>\n        <ul class=\"check-list\">\n          <li>System monitoring<\/li>\n          <li>Support and incident management<\/li>\n          <li>Developments and updates<\/li>\n        <\/ul>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section class=\"section\">\n  <div class=\"container\">\n    <div class=\"split\">\n      <div>\n        <span class=\"overline\">Vendor-independent<\/span>\n        <h2>Which tools <em>we integrate<\/em><\/h2>\n        <p class=\"lead\" style=\"margin-top:18px\">PrismIA is vendor-independent: we recommend and integrate the solution best suited to your need, your environment and your compliance requirements, rather than an off-the-shelf product. Our experience spans both the leading market platforms and custom-built models.<\/p>\n        <p style=\"margin-top:14px\">Depending on how sensitive your data is, we favour appropriate hosting (sovereign cloud, European or Swiss instances, or deployment on your own infrastructure) to reconcile AI performance with nFADP compliance. The goal stays the same: the solution that serves your need, not a vendor's.<\/p>\n      <\/div>\n      <div class=\"card card-svc\">\n        <h3>Platforms and models<\/h3>\n        <ul class=\"check-list\">\n          <li>Microsoft Copilot and the Microsoft 365 ecosystem<\/li>\n          <li>ChatGPT and OpenAI models (API, ChatGPT Enterprise)<\/li>\n          <li>Google Gemini and Anthropic Claude<\/li>\n          <li>Custom-built models and open source solutions, hosted according to your data constraints<\/li>\n          <li>\"Traditional\" AI: machine learning and predictive analytics<\/li>\n        <\/ul>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-819085f e-flex e-con-full pia-wrap pia-prestations e-con e-parent\" data-id=\"819085f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f4d0e10 elementor-widget elementor-widget-html\" data-id=\"f4d0e10\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"section bg-pale\">\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <span class=\"overline\">Method<\/span>\n      <h2>How an integration <em>unfolds<\/em><\/h2>\n      <p>Every project follows a step-by-step approach, from scoping to operation, to control risks and deliver value at each stage.<\/p>\n    <\/div>\n\n    <div class=\"services-grid grid-2cols\">\n      <div class=\"card\">\n        <span class=\"method-num\">01<\/span>\n        <h3>Scoping<\/h3>\n        <p>Clarify the need, the available data and the success criteria.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <span class=\"method-num\">02<\/span>\n        <h3>Design<\/h3>\n        <p>Choose the architecture and technologies, then validate with a proof of concept.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <span class=\"method-num\">03<\/span>\n        <h3>Development and integration<\/h3>\n        <p>Build the solution and connect it to your business systems.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <span class=\"method-num\">04<\/span>\n        <h3>Security and compliance<\/h3>\n        <p>Protect data and verify model compliance.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <span class=\"method-num\">05<\/span>\n        <h3>Deployment and adoption<\/h3>\n        <p>Go live, train the teams and support change.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <span class=\"method-num\">06<\/span>\n        <h3>Maintenance and development<\/h3>\n        <p>Monitor, support and evolve the solution over time.<\/p>\n      <\/div>\n    <\/div>\n\n    <div class=\"savoir\" style=\"margin-top:34px\">\n      <div class=\"dd-tag\">At every step<\/div>\n      <p style=\"color:var(--ink)\">You keep visibility over deliverables, risks and decisions. Integration is the natural extension of an AI audit, which sets the priorities and secures the investment before moving to delivery.<\/p>\n      <a class=\"link-arrow\" href=\"https:\/\/www.prismia.ch\/en\/audit-consulting\/\" style=\"margin-top:14px\">Discover our AI audit &amp; consulting\n        <svg width=\"15\" height=\"15\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n      <\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section class=\"section\">\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <span class=\"overline\">The benefits for your business<\/span>\n      <h2>AI increases the value of <em>your existing processes<\/em><\/h2>\n      <p>There are so many opportunities for artificial intelligence to increase the value of your existing processes.<\/p>\n    <\/div>\n    <div class=\"valeur-grid\">\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">01<\/span>\n        <h3>Proactive risk management<\/h3>\n        <p>Use AI systems to detect and anticipate risks or anomalies, protecting your critical operations.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">02<\/span>\n        <h3>Turning data into strategic leverage<\/h3>\n        <p>Leverage your data smartly and strategically to improve operations and develop new services.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">03<\/span>\n        <h3>Increased productivity<\/h3>\n        <p>Integrate AI tools that boost your teams' productivity, simplifying workflows and strengthening collaboration.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">04<\/span>\n        <h3>Faster decision-making<\/h3>\n        <p>Get AI-based predictive analytics to anticipate trends, identify opportunities and react faster to changes.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">05<\/span>\n        <h3>A business-focused approach<\/h3>\n        <p>Receive AI solutions designed to meet the specific requirements of your field of activity, maximizing their impact.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">06<\/span>\n        <h3>Security and compliance<\/h3>\n        <p>Integrate secure AI solutions to ensure data privacy and compliance with applicable regulations.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">07<\/span>\n        <h3>Improved customer experience<\/h3>\n        <p>Deliver a personalized, responsive customer experience with AI, anticipating their needs and optimizing every interaction.<\/p>\n      <\/div>\n      <div class=\"valeur-card\">\n        <span class=\"valeur-num\">08<\/span>\n        <h3>Repetitive tasks automated<\/h3>\n        <p>Transform repetitive tasks into automated processes to free up time and boost your teams' productivity.<\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b6aef66 e-flex e-con-full pia-wrap pia-opportunites e-con e-parent\" data-id=\"b6aef66\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8b88ebd elementor-widget elementor-widget-html\" data-id=\"8b88ebd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"section\" style=\"padding-top:0\">\n  <div class=\"container\">\n    <div class=\"cta-panel\">\n      <canvas id=\"glCta\" aria-hidden=\"true\"><\/canvas>\n      <span class=\"overline\" style=\"color:var(--lav)\">Let's talk<\/span>\n      <h2>A first use case <em>as an MVP?<\/em><\/h2>\n      <p>A first 30-minute conversation is enough to identify the most promising use case and scope an initial perimeter.<\/p>\n      <a class=\"btn btn-light\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Let's talk about your project\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n      <\/a>\n    <\/div>\n  <\/div>\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7a68057 e-flex e-con-full pia-wrap pia-cta e-con e-parent\" data-id=\"7a68057\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-344319a elementor-widget elementor-widget-html\" data-id=\"344319a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"section bg-pale\">\n  <div class=\"container\">\n    <div class=\"section-head\" style=\"text-align:center;margin-inline:auto\">\n      <span class=\"overline\">Frequently asked questions<\/span>\n      <h2>Your questions, <em>our answers<\/em><\/h2>\n    <\/div>\n    <div class=\"faq-wrap\">\n      <details class=\"faq-item\">\n        <summary>What is AI integration in a company? <span class=\"faq-plus\" aria-hidden=\"true\"><\/span><\/summary>\n        <div class=\"faq-a\">AI integration means deploying artificial intelligence solutions into an organisation's processes and systems, then ensuring their security, adoption and maintenance. The goal is to move from an idea or a pilot to a solution that is genuinely used and creates value.<\/div>\n      <\/details>\n      <details class=\"faq-item\">\n        <summary>Which AI tools does PrismIA integrate? <span class=\"faq-plus\" aria-hidden=\"true\"><\/span><\/summary>\n        <div class=\"faq-a\">PrismIA is vendor-independent. We integrate market platforms (Microsoft Copilot, ChatGPT, Google Gemini, Anthropic Claude) as well as custom-built or open source models. The choice depends on your need, your technical environment and your compliance constraints.<\/div>\n      <\/details>\n      <details class=\"faq-item\">\n        <summary>Is AI integration compliant with the nFADP? <span class=\"faq-plus\" aria-hidden=\"true\"><\/span><\/summary>\n        <div class=\"faq-a\">Yes. Data protection and compliance (nFADP, GDPR) are addressed from the design stage: securing training and production data, choosing appropriate hosting, auditing model compliance and managing bias. We favour solutions that keep you in control of your data.<\/div>\n      <\/details>\n      <details class=\"faq-item\">\n        <summary>Do you need an audit before integrating AI? <span class=\"faq-plus\" aria-hidden=\"true\"><\/span><\/summary>\n        <div class=\"faq-a\">It's recommended. An AI audit identifies the high-impact use cases and the most cost-effective roadmap, which secures the investment. Integration then implements the prioritised projects. Discover also our <a href=\"https:\/\/www.prismia.ch\/en\/solutions\/\">AI solutions<\/a>.<\/div>\n      <\/details>\n      <details class=\"faq-item\">\n        <summary>Do you provide maintenance after deployment? <span class=\"faq-plus\" aria-hidden=\"true\"><\/span><\/summary>\n        <div class=\"faq-a\">Yes. After go-live, we handle system monitoring, support and incident management, as well as developments and updates, to maintain the performance and reliability of your solutions over time.<\/div>\n      <\/details>\n    <\/div>\n  <\/div>\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3567b5d e-flex e-con-full pia-wrap pia-footer e-con e-parent\" data-id=\"3567b5d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7b3878e elementor-widget elementor-widget-html\" data-id=\"7b3878e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<footer class=\"footer\">\n  <canvas id=\"glFooter\" aria-hidden=\"true\"><\/canvas>\n  <div class=\"footer-inner\">\n    <div class=\"container\">\n\n      <div class=\"footer-nl\">\n        <span class=\"overline\" style=\"color:var(--lav)\">Newsletter<\/span>\n        <h2>With <em>\u00ab Plongez dans le grand bAIn \u00bb<\/em>, stay on top of AI news every month.<\/h2>\n        <form class=\"nl-form\" action=\"https:\/\/www.prismia.ch\/#newsletter\" method=\"post\" novalidate>\n          <input type=\"email\" name=\"email\" placeholder=\"your@email.com\" aria-label=\"Email address for the newsletter\" required>\n          <button type=\"submit\" class=\"btn btn-light\">Subscribe<\/button>\n        <\/form>\n        <label class=\"nl-consent\">\n          <input type=\"checkbox\" name=\"consent\" required>\n          <span>I agree to the processing of this data in accordance with the <a href=\"https:\/\/www.prismia.ch\/en\/privacy-policy\/\" target=\"_blank\" rel=\"noopener\">Privacy Statement<\/a>.<\/span>\n        <\/label>\n      <\/div>\n\n      <div class=\"footer-cols\">\n        <div class=\"fcol\">\n          <div class=\"dd-tag\">Services<\/div>\n          <a href=\"https:\/\/www.prismia.ch\/en\/ai-training\/\">AI training<\/a>\n          <a href=\"https:\/\/www.prismia.ch\/en\/audit-consulting\/\">Audit &amp; consulting<\/a>\n          <a href=\"https:\/\/www.prismia.ch\/en\/integration\/\">Integration<\/a>\n        <\/div>\n        <div class=\"fcol\">\n          <div class=\"dd-tag\">PrismIA<\/div>\n          <a href=\"https:\/\/www.prismia.ch\/en\/case-studies\/\">Case studies<\/a>\n      <a href=\"https:\/\/www.prismia.ch\/en\/about-us\/\">About us<\/a>\n          <a href=\"https:\/\/www.prismia.ch\/en\/about-us\/#equipe\">Our team<\/a>\n          <a href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Contact<\/a>\n        <\/div>\n        <div class=\"fcol\">\n          <div class=\"dd-tag\">AI tools<\/div>\n          <a href=\"https:\/\/www.prismia.ch\/en\/local-pii-filter\/\">Local PII Filter<\/a>\n          <a href=\"https:\/\/www.prismia.ch\/en\/bullshitometer\/\">Bullshitometer<\/a>\n        <\/div>\n        <div class=\"fcol\">\n          <div class=\"dd-tag\">Insights<\/div>\n          <a href=\"https:\/\/www.prismia.ch\/en\/newsletter\/\">Newsletters<\/a>\n          <a href=\"https:\/\/www.prismia.ch\/en\/webinars\/\">Webinars<\/a>\n        <\/div>\n        <div class=\"fcol\">\n          <div class=\"dd-tag\">Legal<\/div>\n          <a href=\"https:\/\/www.prismia.ch\/en\/privacy-policy\/\">Privacy<\/a>\n        <\/div>\n        <div class=\"fcontact\">\n          <div class=\"dd-tag\">Contact<\/div>\n          <span>PrismIA S\u00e0rl<br>Ch. Frank-Thomas 32, 1208 Geneva<br>Rue de l'Avenir 28, 1020 Renens<br>Switzerland<\/span>\n          <a href=\"tel:+41225669400\">+41 22 566 94 00<\/a>\n          <a href=\"mailto:info@prismia.ch\">info@prismia.ch<\/a>\n          <a href=\"https:\/\/www.linkedin.com\/company\/prismia-ch\" target=\"_blank\" rel=\"noopener\">LinkedIn<\/a>\n          <a class=\"btn btn-light\" href=\"https:\/\/www.prismia.ch\/en\/contact\/\">Contact us<\/a>\n        <\/div>\n      <\/div>\n\n      <div class=\"footer-bottom\">\n        <img decoding=\"async\" src=\"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PRISMIA_logo_couleur_20241105.svg\" alt=\"PrismIA\">\n        <span class=\"copy\">\u00a9 2026 PrismIA S\u00e0rl, all rights reserved \u00b7 Made with care in Geneva<\/span>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/footer>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a3819c9 elementor-widget elementor-widget-html\" data-id=\"a3819c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.nl-form input.nl-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}\n\/* le th\u00e8me arrondit trop les <button> submit : on force le radius de la charte (2026-07-16) *\/\n.footer-nl .nl-form button,.footer-nl .nl-form .btn{border-radius:var(--radius-btn)!important}\n.nl-form.nl-shake{animation:nlShake .4s}\n@keyframes nlShake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}\n\/* --- feedback rouge doux (champ fautif) --- *\/\n.nl-form input.nl-err{border-color:#ff7a68!important;color:#ffb4a8}\n.nl-form input.nl-err::placeholder{color:#ff9d90}\n.nl-emsg{display:none;color:#ff9d90;font-size:12.5px;margin-top:9px;font-family:\"Plus Jakarta Sans\",system-ui,sans-serif}\n.nl-emsg.show{display:block}\n.footer-nl .nl-consent.nl-err,.footer-nl .nl-consent.nl-err a{color:#ff9d90}\n.footer-nl .nl-consent.nl-err input{outline:1.5px solid #ff7a68;outline-offset:2px;border-radius:4px;accent-color:#ff7a68}\n.footer-nl.nl-done .nl-emsg{display:none!important}\n\/* --- confirmation d'inscription (animation sobre) --- *\/\n.footer-nl.nl-done .nl-form,.footer-nl.nl-done .nl-consent{opacity:0;transform:translateY(-6px);height:0;margin:0;overflow:hidden;pointer-events:none;transition:opacity .35s ease,transform .35s ease}\n.nlx{display:none;flex-direction:column;align-items:flex-start;gap:11px;margin-top:6px;max-width:52ch}\n.footer-nl.nl-done .nlx{display:flex}\n.nlx-line{width:58px;height:2px;border-radius:2px;background:linear-gradient(90deg,#2C55FB,#7B5CFF 55%,#91B1FF);transform:scaleX(0);transform-origin:left;animation:nlxLine .55s .05s forwards cubic-bezier(.2,.8,.2,1)}\n.nlx-over{display:inline-flex;align-items:center;gap:9px;font-family:\"Geist Mono\",ui-monospace,monospace;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#91B1FF;opacity:0;transform:translateY(8px);animation:nlxIn .5s .16s forwards cubic-bezier(.2,.8,.2,1)}\n.nlx-over svg{width:15px;height:15px;flex:0 0 auto;fill:none;stroke:#91B1FF;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;animation:nlxDraw .5s .34s forwards ease}\n@keyframes nlxDraw{to{stroke-dashoffset:0}}\n.nlx-title{font-family:\"Plus Jakarta Sans\",system-ui,sans-serif;font-size:20px;font-weight:800;line-height:1.2;letter-spacing:-.01em;color:#fff;margin:0;opacity:0;transform:translateY(8px);animation:nlxIn .5s .28s forwards cubic-bezier(.2,.8,.2,1)}\n.nlx-title em{font-style:normal;color:#91B1FF}\n.nlx-sub{font-family:\"Plus Jakarta Sans\",system-ui,sans-serif;font-size:14px;line-height:1.55;color:rgba(255,255,255,.72);opacity:0;transform:translateY(8px);animation:nlxIn .5s .40s forwards cubic-bezier(.2,.8,.2,1)}\n@keyframes nlxLine{to{transform:scaleX(1)}}\n@keyframes nlxIn{to{opacity:1;transform:none}}\n@media (prefers-reduced-motion:reduce){.nlx-line,.nlx-over,.nlx-over svg,.nlx-title,.nlx-sub{animation:none!important}.nlx-line{transform:none}.nlx-over,.nlx-title,.nlx-sub{opacity:1;transform:none}.nlx-over svg{stroke-dashoffset:0}}\n<\/style>\n<script>\n(function(){\nfunction boot(){\n var form=document.querySelector('.nl-form'); if(!form||form.dataset.piaNl) return; form.dataset.piaNl='1';\n var wrap=form.closest('.footer-nl')||form.parentElement;\n var hp=document.createElement('input');hp.type='text';hp.name='website';hp.className='nl-hp';hp.tabIndex=-1;hp.autocomplete='off';hp.setAttribute('aria-hidden','true');form.appendChild(hp);\n var inp=form.querySelector('input[type=email]');\n var lbl=wrap.querySelector('.nl-consent');\n var cons=wrap.querySelector('input[name=consent]');\n var emsg=document.createElement('div');emsg.className='nl-emsg';emsg.textContent='Entrez une adresse e-mail valide.';\n if(form.parentNode)form.parentNode.insertBefore(emsg,form.nextSibling);\n var s=document.createElement('div');s.className='nlx';\n s.innerHTML='<span class=\"nlx-line\"><\/span><span class=\"nlx-over\"><svg viewBox=\"0 0 20 20\" aria-hidden=\"true\"><path d=\"M4 10.5l4 4 8-9\"\/><\/svg>Inscription confirm\u00e9e<\/span><strong class=\"nlx-title\">Bienvenue dans le grand b<em>AI<\/em>n.<\/strong><span class=\"nlx-sub\">Votre prochaine \u00e9dition de veille arrive bient\u00f4t \u2014 une \u00e0 deux fois par mois, sans spam.<\/span>';\n wrap.appendChild(s);\n var EP=window.PIA_NL_ENDPOINT||'\/wp-json\/prismia\/v1\/newsletter';var MODE=window.PIA_NL_MODE||'live';\n function shake(){form.classList.remove('nl-shake');void form.offsetWidth;form.classList.add('nl-shake');}\n function clrEmail(){if(inp)inp.classList.remove('nl-err');emsg.classList.remove('show');}\n function clrCons(){if(lbl)lbl.classList.remove('nl-err');}\n if(inp)inp.addEventListener('input',clrEmail);\n if(cons)cons.addEventListener('change',function(){if(cons.checked)clrCons();});\n form.addEventListener('submit',function(e){\n  e.preventDefault();\n  clrEmail();clrCons();\n  var email=inp?inp.value.trim():'';var bad=false;\n  if(!\/^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$\/.test(email)){if(inp)inp.classList.add('nl-err');emsg.classList.add('show');bad=true;}\n  if(cons&&!cons.checked){if(lbl)lbl.classList.add('nl-err');bad=true;}\n  if(bad){shake();if(inp&&inp.classList.contains('nl-err'))inp.focus();return;}\n  if(hp.value)return;\n  var ok=function(){wrap.classList.add('nl-done');};\n  if(MODE==='demo'){setTimeout(ok,300);return;}\n  var btn=form.querySelector('button');if(btn)btn.disabled=true;\n  fetch(EP,{method:'POST',headers:{'Content-Type':'application\/json'},body:JSON.stringify({email:email,consent:cons?cons.checked:true,website:hp.value})})\n   .then(function(r){return r.ok?r.json():Promise.reject();}).then(ok)\n   .catch(function(){if(btn)btn.disabled=false;alert('Oups, r\u00e9essayez dans un instant.');});\n });\n}\nif(document.readyState==='loading')document.addEventListener('DOMContentLoaded',boot);else boot();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1251fc9 elementor-widget elementor-widget-html\" data-id=\"1251fc9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\/* 2026-07-15 \u2014 interligne de la ligne de consentement newsletter (le bloc .nl-consent du CSS principal n'avait pas de line-height, d'o\u00f9 2 lignes coll\u00e9es). Fond corrig\u00e9 dans styles.css source. *\/\n.footer-nl .nl-consent{line-height:1.55}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-74d38d7 e-flex e-con-full pia-wrap pia-js e-con e-parent\" data-id=\"74d38d7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a1f2e93 elementor-widget elementor-widget-html\" data-id=\"a1f2e93\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>\nfunction __piaBoot(){\n\/* PrismIA mockup-v2 \u2014 nav + shader hero\/footer (maison, ~13 KB)\n   Shader \"Grille maquette\" (variante F valid\u00e9e) : halo central + trame\n   halftone en grille, statique. Interactions souris uniquement :\n   illumination + micro-relief des points, orbe discr\u00e8te sur la ligne\n   de transition (taille r\u00e9active \u00e0 la proximit\u00e9), inertie 0.042.\n   2026-07-13 (feedback Fran\u00e7ois) : champ recentr\u00e9 sur le bleu PrismIA\n   #2C55FB (l'ancienne base indigo #0E1880 + dominante #1929DD rendait\n   un bleu roi \u00ab Mister-IA \u00bb) ; rayon des dots r\u00e9duit de 20 %. *\/\n(function () {\n  \"use strict\";\n\n  \/* ---------------- NAV ---------------- *\/\n  var nav = document.getElementById(\"nav\");\n  var burger = document.getElementById(\"burger\");\n\n  function onScroll() {\n    if (nav.hasAttribute(\"data-solid\")) { nav.classList.add(\"is-scrolled\"); return; }\n    if (window.scrollY > 40) nav.classList.add(\"is-scrolled\");\n    else if (!nav.classList.contains(\"menu-open\")) nav.classList.remove(\"is-scrolled\");\n  }\n  window.addEventListener(\"scroll\", onScroll, { passive: true });\n  onScroll();\n\n  \/\/ dropdowns (hover desktop + clic)\n  document.querySelectorAll(\"[data-dd]\").forEach(function (item) {\n    var btn = item.querySelector(\".nav-link\");\n    var closeTimer = null;\n    function open() {\n      clearTimeout(closeTimer);\n      document.querySelectorAll(\"[data-dd].open\").forEach(function (o) { if (o !== item) o.classList.remove(\"open\"); });\n      item.classList.add(\"open\");\n      btn.setAttribute(\"aria-expanded\", \"true\");\n    }\n    function close() {\n      closeTimer = setTimeout(function () {\n        item.classList.remove(\"open\");\n        btn.setAttribute(\"aria-expanded\", \"false\");\n      }, 180);\n    }\n    item.addEventListener(\"mouseenter\", open);\n    item.addEventListener(\"mouseleave\", close);\n    btn.addEventListener(\"click\", function (e) {\n      e.preventDefault();\n      if (item.classList.contains(\"open\")) { item.classList.remove(\"open\"); btn.setAttribute(\"aria-expanded\", \"false\"); }\n      else open();\n    });\n  });\n  document.addEventListener(\"click\", function (e) {\n    if (!e.target.closest(\"[data-dd]\")) {\n      document.querySelectorAll(\"[data-dd].open\").forEach(function (o) { o.classList.remove(\"open\"); });\n    }\n  });\n\n  \/\/ burger mobile\n  if (burger) {\n    burger.addEventListener(\"click\", function () {\n      var open = nav.classList.toggle(\"menu-open\");\n      burger.setAttribute(\"aria-expanded\", open ? \"true\" : \"false\");\n      if (open) nav.classList.add(\"is-scrolled\");\n      document.body.style.overflow = open ? \"hidden\" : \"\";\n      if (!open) onScroll();\n    });\n  }\n\n  var reducedMotion = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n\n  \/* ---------------- REVEALS AU SCROLL (2026-07-13) ----------------\n     Fade-up discret sur les blocs de section, cascade sur les enfants de\n     grilles. Z\u00e9ro HTML modifi\u00e9 : les classes .rv\/.in sont pos\u00e9es ici (sans\n     JS, rien n'est masqu\u00e9) puis RETIR\u00c9ES en fin de transition pour ne pas\n     interf\u00e9rer avec les transforms de hover des cards. *\/\n  if (!reducedMotion && \"IntersectionObserver\" in window) {\n    var rvItems = [];\n    document.querySelectorAll(\".section-head, .faq-item, .cta-panel, .tools-band\").forEach(function (el) {\n      rvItems.push([el, 0]);\n    });\n    document.querySelectorAll(\".services-grid, .valeur-grid, .skills-grid, .news-grid, .method-grid, .split\").forEach(function (g) {\n      Array.prototype.forEach.call(g.children, function (el, i) { rvItems.push([el, Math.min(i, 5) * 90]); });\n    });\n    var rvClean = function (el, delay) {\n      setTimeout(function () { el.classList.remove(\"rv\", \"in\"); el.style.removeProperty(\"--rvd\"); }, 950 + delay);\n    };\n    var rvIO = new IntersectionObserver(function (entries) {\n      entries.forEach(function (en) {\n        if (!en.isIntersecting) return;\n        rvIO.unobserve(en.target);\n        en.target.classList.add(\"in\");\n        rvClean(en.target, parseFloat(en.target.style.getPropertyValue(\"--rvd\") || 0) * 1000);\n      });\n    }, { rootMargin: \"0px 0px -8% 0px\", threshold: 0.08 });\n    rvItems.forEach(function (it) {\n      var el = it[0];\n      if (el.closest(\".hero\")) return;                                  \/\/ le hero a sa propre entr\u00e9e\n      if (el.getBoundingClientRect().top < window.innerHeight * 0.85) return; \/\/ d\u00e9j\u00e0 visible : ne pas masquer\n      if (it[1]) el.style.setProperty(\"--rvd\", it[1] \/ 1000 + \"s\");\n      el.classList.add(\"rv\");\n      rvIO.observe(el);\n    });\n\n    \/* entr\u00e9e du hero : cascade titre -> lead -> CTA *\/\n    var heroKids = document.querySelectorAll(\".hero-inner > *\");\n    heroKids.forEach(function (el, i) {\n      el.style.setProperty(\"--rvd\", 0.12 + i * 0.14 + \"s\");\n      el.classList.add(\"rv\");\n    });\n    requestAnimationFrame(function () {\n      requestAnimationFrame(function () {\n        heroKids.forEach(function (el) { el.classList.add(\"in\"); rvClean(el, 800); });\n      });\n    });\n  }\n\n  \/* ---------------- SCROLL INERTIEL (2026-07-13) ----------------\n     Molette desktop uniquement (pointer:fine) : lissage exponentiel -> le\n     d\u00e9filement d\u00e9c\u00e9l\u00e8re progressivement. Tactile, clavier, scrollbar et\n     ancres restent natifs (resynchro via l'event scroll). *\/\n  if (!reducedMotion && window.matchMedia(\"(pointer: fine)\").matches) {\n    (function () {\n      var target = window.scrollY, cur = target, active = false, self = false;\n      function maxScroll() { return document.documentElement.scrollHeight - window.innerHeight; }\n      function step() {\n        cur += (target - cur) * 0.085;\n        if (Math.abs(target - cur) < 0.6) { cur = target; active = false; }\n        self = true;\n        window.scrollTo({ top: Math.round(cur), behavior: \"instant\" }); \/\/ \"instant\" : ne pas d\u00e9clencher scroll-behavior:smooth\n        requestAnimationFrame(function () { self = false; });\n        if (active) requestAnimationFrame(step);\n      }\n      window.addEventListener(\"wheel\", function (e) {\n        if (e.ctrlKey || e.defaultPrevented) return;                       \/\/ zoom navigateur\n        if (Math.abs(e.deltaX) > Math.abs(e.deltaY)) return;               \/\/ d\u00e9filement horizontal natif\n        if (document.body.style.overflow === \"hidden\") return;             \/\/ menu mobile ouvert\n        e.preventDefault();\n        var d = e.deltaY * (e.deltaMode === 1 ? 33 : e.deltaMode === 2 ? window.innerHeight : 1);\n        target = Math.max(0, Math.min(maxScroll(), target + d));\n        if (!active) { active = true; requestAnimationFrame(step); }\n      }, { passive: false });\n      window.addEventListener(\"scroll\", function () {\n        if (!self && !active) { cur = target = window.scrollY; }           \/\/ clavier\/scrollbar\/ancres : resynchro\n      }, { passive: true });\n    })();\n  }\n\n  \/* ---------------- SHADER (variante F) ---------------- *\/\n  var VS = \"attribute vec2 aP;void main(){gl_Position=vec4(aP,0.,1.);}\";\n  var FS = [\n    \"precision highp float;\",\n    \"uniform vec2 uRes;uniform vec2 uM;uniform float uFlip;uniform float uCy;uniform float uDim;uniform float uDots;uniform float uTop;uniform float uOrb;\",\n    \"float h21(vec2 p){p=fract(p*vec2(123.34,456.21));p+=dot(p,p+45.32);return fract(p.x*p.y);}\",\n    \"void main(){\",\n    \"  vec2 frag=gl_FragCoord.xy;\",\n    \"  vec2 uv=frag\/uRes;\",\n    \"  vec2 p=(frag-0.5*uRes)\/uRes.y;\",\n    \"  p.y*=uFlip;\",\n    \"  uv.y=mix(uv.y,1.0-uv.y,step(uFlip,0.0));\",\n    \"  vec2 m=vec2(uM.x,uM.y*uFlip);\",\n    \"  vec3 cDark=vec3(0.016,0.028,0.106);\",\n    \"  vec3 cP=vec3(0.098,0.161,0.867);\",\n    \"  vec3 cA=vec3(0.173,0.333,0.984);\",\n    \"  vec3 cL=vec3(0.569,0.694,1.0);\",\n    \"  vec3 cW=vec3(0.918,0.941,1.0);\",\n    \"  vec2 gc=(p-vec2(0.0,uCy))*vec2(0.95,1.3);\",\n    \"  float g0=exp(-dot(gc,gc)*2.6);\",\n    \"  vec3 col=mix(cDark,cA*0.60,0.42+0.30*g0*uDim);\", \/\/ plancher ambiant bleu releve (0.34->0.42 le 13\/07 : encore moins de noir)\n    \"  col+=cP*g0*0.45*uDim;\", \/\/ 1929DD riche en B : pousse vers le bleu vif sans virer periwinkle\n    \"  col+=cA*g0*0.80*uDim;\", \/\/ dominante accent : le champ tire vers #2C55FB, pas vers le bleu roi\n    \"  col+=cA*pow(g0,2.0)*0.85*uDim;\",\n    \"  col+=mix(cA,cW,0.8)*pow(g0,7.0)*0.62*uDim;\", \/\/ pic blanc du halo l\u00e9g\u00e8rement att\u00e9nu\u00e9 (lisibilit\u00e9 du titre)\n    \"  vec2 pm=p-m;\",\n    \"  float mprox=exp(-dot(pm,pm)*24.0);\",\n    \"  vec2 pd=p-pm*0.07*mprox;\",\n    \"  float den=52.0;\", \/\/ 105 -> 74 -> 52 : -75% de dots par surface au total (2026-07-13, diff\u00e9renciation Mister-IA)\n    \"  vec2 g=pd*den+vec2(den*0.5);\",\n    \"  vec2 cell=floor(g);vec2 f=fract(g);\",\n    \"  float d=length(f-0.5);\",\n    \"  float rv=h21(cell);\",\n    \"  vec2 gc2=(pd-vec2(0.0,uCy))*vec2(0.95,1.3);\",\n    \"  float gf=exp(-dot(gc2,gc2)*2.6);\",\n    \"  float band=smoothstep(0.03,0.25,gf)*(1.0-smoothstep(0.45,0.8,gf));\",\n    \"  float amp=band*(0.65+0.35*rv)+mprox*(0.4+0.4*band);\",\n    \"  float rad=0.024+0.080*min(amp,1.0)*(1.0+0.35*mprox);\", \/\/ rayon re-scal\u00e9 x0.707 a chaque baisse de den : taille pixel des points inchang\u00e9e\n    \"  float dm=smoothstep(rad,rad*0.68,d);\",\n    \"  vec3 dc=mix(cL*0.9,cW,clamp(gf*0.8+0.6*mprox,0.0,1.0));\",\n    \"  col+=dc*dm*min(amp,1.1)*0.3*uDots;\",\n    \"  col=mix(col,vec3(0.031,0.056,0.20),smoothstep(0.55,1.0,uv.y)*0.42*uTop);\", \/\/ fondu haut vers bleu profond, encore adouci (0.9 -> 0.55 -> 0.42)\n    \"  float mxx=clamp(m.x,-0.66,0.66);\",\n    \"  vec2 C=vec2(mxx,-0.475);\",\n    \"  float md=length(m-C);\",\n    \"  float sz=mix(0.050,0.105,exp(-md*1.9));\",\n    \"  vec2 po=p-C;po.x*=0.82;\",\n    \"  float r2=dot(po,po);\",\n    \"  float orb=exp(-r2\/(sz*sz));\",\n    \"  float halo=exp(-r2\/(sz*sz*9.0))*0.20;\",\n    \"  col+=cL*halo*uOrb;\",\n    \"  col+=vec3(1.0,0.995,0.98)*orb*0.8*uOrb;\",\n    \"  col*=1.0-0.16*smoothstep(0.75,1.35,length(p));\", \/\/ vignette allegee (0.30 -> 0.22 -> 0.16)\n    \"  col=1.0-exp(-col*1.35);\",\n    \"  float lum=dot(col,vec3(0.299,0.587,0.114));\", \/\/ boost de saturation post-tonemap (13\/07) :\n    \"  col=clamp(mix(vec3(lum),col,1.30),0.0,1.0);\", \/\/ le tonemap compresse B et delave le champ -> on re-sature (blancs intacts)\n    \"  gl_FragColor=vec4(col,1.0);\",\n    \"}\"\n  ].join(\"\\n\");\n\n  function initScene(canvas, host, flip, cy, dim, dots, top, orb) {\n    var reduced = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n    var gl = canvas.getContext(\"webgl\", { antialias: false, alpha: false, powerPreference: \"low-power\" });\n    if (!gl) {\n      host.style.background =\n        \"radial-gradient(60% 55% at 50% \" + (flip > 0 ? \"62%\" : \"38%\") + \", rgba(44,85,251,.55), transparent 72%),\" +\n        \"linear-gradient(180deg,#04071b,#0A1240 50%,#04071b)\";\n      return;\n    }\n    function sh(type, src) {\n      var s = gl.createShader(type); gl.shaderSource(s, src); gl.compileShader(s);\n      if (!gl.getShaderParameter(s, gl.COMPILE_STATUS)) console.error(gl.getShaderInfoLog(s));\n      return s;\n    }\n    var prog = gl.createProgram();\n    gl.attachShader(prog, sh(gl.VERTEX_SHADER, VS));\n    gl.attachShader(prog, sh(gl.FRAGMENT_SHADER, FS));\n    gl.linkProgram(prog); gl.useProgram(prog);\n    var buf = gl.createBuffer(); gl.bindBuffer(gl.ARRAY_BUFFER, buf);\n    gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1, -1, 3, -1, -1, 3]), gl.STATIC_DRAW);\n    var loc = gl.getAttribLocation(prog, \"aP\");\n    gl.enableVertexAttribArray(loc); gl.vertexAttribPointer(loc, 2, gl.FLOAT, false, 0, 0);\n    var uRes = gl.getUniformLocation(prog, \"uRes\");\n    var uM = gl.getUniformLocation(prog, \"uM\");\n    var uFlip = gl.getUniformLocation(prog, \"uFlip\");\n    var uCy = gl.getUniformLocation(prog, \"uCy\");\n    var uDim = gl.getUniformLocation(prog, \"uDim\");\n    var uDots = gl.getUniformLocation(prog, \"uDots\");\n    var uTop = gl.getUniformLocation(prog, \"uTop\");\n    var uOrb = gl.getUniformLocation(prog, \"uOrb\");\n\n    var DPR = Math.min(window.devicePixelRatio || 1, 1.5);\n    function resize() {\n      var w = host.clientWidth, h = host.clientHeight;\n      canvas.width = Math.round(w * DPR); canvas.height = Math.round(h * DPR);\n      gl.viewport(0, 0, canvas.width, canvas.height);\n    }\n    resize(); window.addEventListener(\"resize\", resize);\n\n    var mx = 0, my = 0, tx = 0, ty = 0;\n    host.addEventListener(\"mousemove\", function (e) {\n      var r = host.getBoundingClientRect();\n      tx = ((e.clientX - r.left) - r.width * 0.5) \/ r.height;\n      ty = -(((e.clientY - r.top) - r.height * 0.5) \/ r.height);\n    });\n\n    var running = true, inView = true;\n    document.addEventListener(\"visibilitychange\", function () { running = !document.hidden; });\n    if (\"IntersectionObserver\" in window) {\n      new IntersectionObserver(function (en) { inView = en[0].isIntersecting; }, { threshold: 0.02 }).observe(host);\n    }\n\n    function draw() {\n      gl.uniform2f(uRes, canvas.width, canvas.height);\n      mx += (tx - mx) * 0.042; my += (ty - my) * 0.042;\n      gl.uniform2f(uM, mx, my);\n      gl.uniform1f(uFlip, flip);\n      gl.uniform1f(uCy, cy);\n      gl.uniform1f(uDim, dim);\n      gl.uniform1f(uDots, dots);\n      gl.uniform1f(uTop, top);\n      gl.uniform1f(uOrb, orb);\n      gl.drawArrays(gl.TRIANGLES, 0, 3);\n    }\n\n    var FPS = 30, frameMs = 1000 \/ FPS, last = 0;\n    function loop(now) {\n      requestAnimationFrame(loop);\n      if (!running || !inView) return;\n      if (now - last < frameMs) return;\n      last = now; draw();\n    }\n    draw(); \/\/ premier rendu imm\u00e9diat, m\u00eame hors viewport (\u00e9vite un canvas noir avant le scroll)\n    if (reduced) { canvas.classList.add(\"on\"); }\n    else {\n      requestAnimationFrame(loop);\n      requestAnimationFrame(function () { canvas.classList.add(\"on\"); });\n    }\n  }\n\n  var heroCanvas = document.getElementById(\"glHero\");\n  \/\/ cy -0.18 : halo descendu sous le bloc titre (contraste du h1 lavande sur bleu profond)\n  if (heroCanvas) initScene(heroCanvas, heroCanvas.parentElement, 1.0, -0.18, 1.0, 1.0, 1.0, 1.0);\n  var footCanvas = document.getElementById(\"glFooter\");\n  if (footCanvas) initScene(footCanvas, footCanvas.parentElement, -1.0, -0.28, 0.42, 0.7, 1.0, 1.0);\n  var ctaCanvas = document.getElementById(\"glCta\");\n  \/\/ dim 0.35 -> 0.60 (2026-07-13, Fran\u00e7ois) : halo plus large, moins de sombre aux bords du panneau\n  if (ctaCanvas) initScene(ctaCanvas, ctaCanvas.parentElement, 1.0, -0.12, 0.60, 0.5, 0.0, 0.0);\n})();\n}\nif(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',__piaBoot);}else{__piaBoot();}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Services + What we do AI training Audit &amp; consulting Integration All our services \u2192 AI training AI Initiate C-Level Coaching Microsoft Copilot Essentials Microsoft Copilot Advanced ChatGPT Advanced Claude Advanced All our training courses \u2192 Turnkey solutions Voice AI Agent Local Transcription Super Researcher Agentic AI Watch All our solutions \u2192 PrismIA is an [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_yoast_wpseo_focuskw":"Integration of artificial intelligence solutions within businesses","_yoast_wpseo_title":"AI integration \u2013 Deployment of customized solutions","_yoast_wpseo_metadesc":"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!","_yoast_wpseo_linkdex":"","_yoast_wpseo_content_score":"","_elementor_version":"4.2.0","_elementor_pro_version":"4.2.0","_elementor_css":null,"footnotes":""},"class_list":["post-1358","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>AI integration \u2013 Deployment of customized solutions<\/title>\n<meta name=\"description\" content=\"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.prismia.ch\/en\/integration\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AI integration \u2013 Deployment of customized solutions\" \/>\n<meta property=\"og:description\" content=\"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.prismia.ch\/en\/integration\/\" \/>\n<meta property=\"og:site_name\" content=\"PrismIA\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-21T10:41:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.prismia.ch\/wp-content\/uploads\/2026\/07\/prismia-og-default.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/\",\"url\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/\",\"name\":\"AI integration \u2013 Deployment of customized solutions\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.prismia.ch\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/PRISMIA_logo_couleur_20241105.svg\",\"datePublished\":\"2024-11-12T09:58:47+00:00\",\"dateModified\":\"2026-07-21T10:41:47+00:00\",\"description\":\"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.prismia.ch\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/PRISMIA_logo_couleur_20241105.svg\",\"contentUrl\":\"https:\\\/\\\/www.prismia.ch\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/PRISMIA_logo_couleur_20241105.svg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/integration\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/\",\"name\":\"PrismIA\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Organization\",\"ProfessionalService\"],\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/#organization\",\"name\":\"PrismIA S\u00e0rl\",\"url\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.prismia.ch\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/PIA_logo_415x90-e1739004471809.webp\",\"contentUrl\":\"https:\\\/\\\/www.prismia.ch\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/PIA_logo_415x90-e1739004471809.webp\",\"width\":200,\"height\":43,\"caption\":\"PrismIA S\u00e0rl\"},\"image\":{\"@id\":\"https:\\\/\\\/www.prismia.ch\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"description\":\"PrismIA est une agence d'intelligence artificielle bas\u00e9e \u00e0 Gen\u00e8ve. Nous accompagnons les PME et grandes entreprises suisses dans l'adoption responsable de l'IA : conseil strat\u00e9gique, formations sur mesure, audit et int\u00e9gration de solutions.\",\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Chemin Frank-Thomas 32\",\"postalCode\":\"1208\",\"addressLocality\":\"Gen\u00e8ve\",\"addressRegion\":\"GE\",\"addressCountry\":\"CH\"},\"telephone\":\"+41 22 566 94 00\",\"email\":\"info@prismia.ch\",\"geo\":{\"@type\":\"GeoCoordinates\",\"latitude\":46.203807649278424,\"longitude\":6.1732832963451445},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/company\\\/prismia-ch\"],\"areaServed\":[{\"@type\":\"Country\",\"name\":\"Switzerland\"},{\"@type\":\"AdministrativeArea\",\"name\":\"Suisse romande\"},{\"@type\":\"AdministrativeArea\",\"name\":\"Vaud\"},{\"@type\":\"City\",\"name\":\"Gen\u00e8ve\"},{\"@type\":\"City\",\"name\":\"Lausanne\"}],\"location\":[{\"@type\":\"Place\",\"name\":\"PrismIA Gen\u00e8ve\",\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Chemin Frank-Thomas 32\",\"postalCode\":\"1208\",\"addressLocality\":\"Gen\u00e8ve\",\"addressRegion\":\"GE\",\"addressCountry\":\"CH\"}},{\"@type\":\"Place\",\"name\":\"PrismIA Renens\",\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Rue de l'Avenir 28\",\"postalCode\":\"1020\",\"addressLocality\":\"Renens\",\"addressRegion\":\"VD\",\"addressCountry\":\"CH\"}}],\"knowsAbout\":[\"Intelligence artificielle\",\"Formation IA\",\"Audit IA\",\"Int\u00e9gration IA\",\"Conseil IA\",\"Gouvernance IA\",\"IA g\u00e9n\u00e9rative\",\"Strat\u00e9gie IA\",\"IA en entreprise\",\"IA responsable\"],\"priceRange\":\"$$\",\"openingHoursSpecification\":{\"@type\":\"OpeningHoursSpecification\",\"dayOfWeek\":[\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\"],\"opens\":\"09:00\",\"closes\":\"18:00\"},\"foundingDate\":\"2024\",\"slogan\":\"B\u00e2tissez le futur de votre entreprise avec des solutions IA s\u00e9curis\u00e9es\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"AI integration \u2013 Deployment of customized solutions","description":"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.prismia.ch\/en\/integration\/","og_locale":"en_US","og_type":"article","og_title":"AI integration \u2013 Deployment of customized solutions","og_description":"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!","og_url":"https:\/\/www.prismia.ch\/en\/integration\/","og_site_name":"PrismIA","article_modified_time":"2026-07-21T10:41:47+00:00","og_image":[{"url":"https:\/\/www.prismia.ch\/wp-content\/uploads\/2026\/07\/prismia-og-default.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.prismia.ch\/en\/integration\/","url":"https:\/\/www.prismia.ch\/en\/integration\/","name":"AI integration \u2013 Deployment of customized solutions","isPartOf":{"@id":"https:\/\/www.prismia.ch\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.prismia.ch\/en\/integration\/#primaryimage"},"image":{"@id":"https:\/\/www.prismia.ch\/en\/integration\/#primaryimage"},"thumbnailUrl":"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PRISMIA_logo_couleur_20241105.svg","datePublished":"2024-11-12T09:58:47+00:00","dateModified":"2026-07-21T10:41:47+00:00","description":"PrismIA guides you through the integration of high-performance AI solutions tailored to your business needs. Contact us now!","breadcrumb":{"@id":"https:\/\/www.prismia.ch\/en\/integration\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.prismia.ch\/en\/integration\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.prismia.ch\/en\/integration\/#primaryimage","url":"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PRISMIA_logo_couleur_20241105.svg","contentUrl":"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PRISMIA_logo_couleur_20241105.svg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.prismia.ch\/en\/integration\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.prismia.ch\/en\/home\/"},{"@type":"ListItem","position":2,"name":"Integration"}]},{"@type":"WebSite","@id":"https:\/\/www.prismia.ch\/en\/#website","url":"https:\/\/www.prismia.ch\/en\/","name":"PrismIA","description":"","publisher":{"@id":"https:\/\/www.prismia.ch\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.prismia.ch\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Organization","ProfessionalService"],"@id":"https:\/\/www.prismia.ch\/en\/#organization","name":"PrismIA S\u00e0rl","url":"https:\/\/www.prismia.ch\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.prismia.ch\/en\/#\/schema\/logo\/image\/","url":"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PIA_logo_415x90-e1739004471809.webp","contentUrl":"https:\/\/www.prismia.ch\/wp-content\/uploads\/2024\/11\/PIA_logo_415x90-e1739004471809.webp","width":200,"height":43,"caption":"PrismIA S\u00e0rl"},"image":{"@id":"https:\/\/www.prismia.ch\/en\/#\/schema\/logo\/image\/"},"description":"PrismIA est une agence d'intelligence artificielle bas\u00e9e \u00e0 Gen\u00e8ve. Nous accompagnons les PME et grandes entreprises suisses dans l'adoption responsable de l'IA : conseil strat\u00e9gique, formations sur mesure, audit et int\u00e9gration de solutions.","address":{"@type":"PostalAddress","streetAddress":"Chemin Frank-Thomas 32","postalCode":"1208","addressLocality":"Gen\u00e8ve","addressRegion":"GE","addressCountry":"CH"},"telephone":"+41 22 566 94 00","email":"info@prismia.ch","geo":{"@type":"GeoCoordinates","latitude":46.203807649278424,"longitude":6.1732832963451445},"sameAs":["https:\/\/www.linkedin.com\/company\/prismia-ch"],"areaServed":[{"@type":"Country","name":"Switzerland"},{"@type":"AdministrativeArea","name":"Suisse romande"},{"@type":"AdministrativeArea","name":"Vaud"},{"@type":"City","name":"Gen\u00e8ve"},{"@type":"City","name":"Lausanne"}],"location":[{"@type":"Place","name":"PrismIA Gen\u00e8ve","address":{"@type":"PostalAddress","streetAddress":"Chemin Frank-Thomas 32","postalCode":"1208","addressLocality":"Gen\u00e8ve","addressRegion":"GE","addressCountry":"CH"}},{"@type":"Place","name":"PrismIA Renens","address":{"@type":"PostalAddress","streetAddress":"Rue de l'Avenir 28","postalCode":"1020","addressLocality":"Renens","addressRegion":"VD","addressCountry":"CH"}}],"knowsAbout":["Intelligence artificielle","Formation IA","Audit IA","Int\u00e9gration IA","Conseil IA","Gouvernance IA","IA g\u00e9n\u00e9rative","Strat\u00e9gie IA","IA en entreprise","IA responsable"],"priceRange":"$$","openingHoursSpecification":{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday"],"opens":"09:00","closes":"18:00"},"foundingDate":"2024","slogan":"B\u00e2tissez le futur de votre entreprise avec des solutions IA s\u00e9curis\u00e9es"}]}},"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/pages\/1358","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/comments?post=1358"}],"version-history":[{"count":14,"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/pages\/1358\/revisions"}],"predecessor-version":[{"id":4501,"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/pages\/1358\/revisions\/4501"}],"wp:attachment":[{"href":"https:\/\/www.prismia.ch\/en\/wp-json\/wp\/v2\/media?parent=1358"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}