{"id":13824,"date":"2026-06-11T21:43:50","date_gmt":"2026-06-11T19:43:50","guid":{"rendered":"\/home\/"},"modified":"2026-07-01T21:14:27","modified_gmt":"2026-07-01T19:14:27","slug":"home","status":"publish","type":"page","link":"https:\/\/www.grip-facility.com\/en\/","title":{"rendered":"Contract Management Software | GRIP"},"content":{"rendered":"\n<section class=\"ghv3-hero\">\n<style>\n\/* ===== GRIP homepage v3.2 \u2014 alle waardes uit tokens.md ===== *\/\n.ghv3-hero, .ghv3-logos, .ghv3-how, .ghv3-start, .ghv3-results, .ghv3-cta {\n  font-family: 'Poppins', sans-serif; line-height: 1.5; color: #0F172A;\n}\n.ghv3-hero *, .ghv3-logos *, .ghv3-how *, .ghv3-start *, .ghv3-results *, .ghv3-cta * { box-sizing: border-box; margin: 0; padding: 0; }\n.ghv3-container { max-width: 1400px; margin: 0 auto; padding: 0 1.5rem; }\n\n.ghv3-btn {\n  display: inline-flex; align-items: center; justify-content: center;\n  font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 0.95rem;\n  padding: 14px 28px; border-radius: 8px; text-decoration: none !important;\n  transition: all 0.2s ease; border: 2px solid transparent; cursor: pointer;\n}\n.ghv3-btn:hover { transform: translateY(-2px); }\n.ghv3-btn--white { background: #FFFFFF; color: #006BFF !important; }\n.ghv3-btn--white:hover { background: #F0F7FF; color: #006BFF !important; }\n.ghv3-btn--ghost { background: rgba(255,255,255,0.15); border-color: #FFFFFF; color: #FFFFFF !important; }\n.ghv3-btn--ghost:hover { background: #FFFFFF; color: #006BFF !important; }\n\n.ghv3-card {\n  background: #FFFFFF; border: 1px solid #E5E7EB; border-top: 3px solid #006BFF;\n  border-radius: 14px; box-shadow: 0 8px 32px rgba(0,0,0,0.12);\n}\n.ghv3-h2 { font-size: clamp(1.9rem, 3.2vw, 2.5rem); font-weight: 700; letter-spacing: -0.5px; line-height: 1.15; color: #0F172A !important; margin-bottom: 16px; }\n.ghv3-intro { color: rgba(15,23,42,0.70); font-size: 1.05rem; max-width: 620px; margin-bottom: 56px; }\n\n\/* mini product-UI elementen (gedeeld) *\/\n.ghv3-ui {\n  background: #F8FAFC; border: 1px solid #E5E7EB; border-radius: 8px;\n  padding: 12px 14px; margin-bottom: 20px;\n}\n.ghv3-ui-row { display: flex; align-items: center; gap: 8px; font-size: 0.78rem; color: #0F172A; }\n.ghv3-ui-row + .ghv3-ui-row { margin-top: 8px; }\n.ghv3-chip { font-size: 0.66rem; font-weight: 600; border-radius: 999px; padding: 2px 9px; white-space: nowrap; }\n.ghv3-chip--blue { color: #006BFF; background: #F0F7FF; }\n.ghv3-chip--orange { color: #E5431F; background: rgba(255,75,42,0.1); }\n.ghv3-chip--wit { color: #FFFFFF; background: #006BFF; }\n.ghv3-avatar {\n  width: 22px; height: 22px; border-radius: 50%; flex: 0 0 auto;\n  background: #006BFF; color: #FFFFFF; font-size: 0.6rem; font-weight: 600;\n  display: grid; place-items: center;\n}\n.ghv3-avatar--grijs { background: #6B7280; }\n.ghv3-ui-bar { height: 6px; border-radius: 999px; background: #E5E7EB; overflow: hidden; margin-top: 10px; }\n.ghv3-ui-bar span { display: block; height: 100%; width: 72%; border-radius: 999px; background: #006BFF; }\n.ghv3-ui-file { display: flex; align-items: center; gap: 7px; font-size: 0.74rem; font-weight: 500; color: #0F172A; }\n.ghv3-ui-file + .ghv3-ui-file { margin-top: 7px; }\n.ghv3-ui-pdf {\n  width: 22px; height: 27px; border-radius: 4px; flex: 0 0 auto;\n  background: #E0341B; color: #FFFFFF; font-size: 7px; font-weight: 700;\n  display: grid; place-items: center;\n}\n.ghv3-ui-meta { margin-left: auto; font-size: 0.68rem; color: #6B7280; white-space: nowrap; }\n\n\/* ---- 1. hero ---- *\/\n.ghv3-hero { position: relative; background: #006BFF; padding: 4.5rem 0 4rem; overflow: hidden; }\n.ghv3-hero::after {\n  content: ''; position: absolute; inset: 0;\n  background-image: url('\/wp-content\/uploads\/2025\/01\/ov1.png');\n  background-size: cover; background-position: center; opacity: 0.85; pointer-events: none;\n}\n.ghv3-hero .ghv3-container { position: relative; z-index: 3; width: 100%; }\n.ghv3-hero-inner { display: grid; grid-template-columns: minmax(0,10fr) minmax(0,14fr); gap: 48px; align-items: center; }\n.ghv3-eyebrow {\n  display: inline-flex; align-items: center; gap: 8px; padding: 4px 12px; border-radius: 999px;\n  background: rgba(255,255,255,0.2); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase;\n  font-weight: 600; color: #FFFFFF; margin-bottom: 20px;\n}\n.ghv3-hero h1 {\n  font-size: clamp(2rem, 3.8vw, 2.8rem); font-weight: 700; line-height: 1.15; letter-spacing: -0.5px;\n  color: #FFFFFF !important; margin-bottom: 20px; max-width: 620px;\n}\n.ghv3-hero-sub { color: #FFFFFF; opacity: 0.9; font-size: 1.05rem; max-width: 560px; margin-bottom: 32px; }\n.ghv3-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }\n\n\/* ---- hero demo: bron -> GRIP dataflow ---- *\/\n.ghv3-demo { position: relative; display: flex; flex-direction: column; gap: 14px; }\n\n\/* service-banner: maakt de wisselende dienst onmiskenbaar *\/\n.ghv3-service {\n  display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;\n  margin-bottom: 4px;\n}\n.ghv3-service-num {\n  align-self: center; display: grid; place-items: center; flex: 0 0 auto;\n  width: 30px; height: 30px; border-radius: 50%;\n  background: rgba(255,255,255,0.2); color: #FFFFFF; font-weight: 700; font-size: 0.9rem;\n}\n.ghv3-service-naam {\n  position: relative; font-weight: 700; font-size: clamp(1.2rem, 2vw, 1.55rem);\n  letter-spacing: -0.5px; color: #FFFFFF; line-height: 1.2; padding-bottom: 4px;\n}\n.ghv3-service-naam::after {\n  content: ''; position: absolute; left: 0; bottom: 0; height: 3px; width: 0;\n  background: #FF4B2A; border-radius: 999px;\n}\n.ghv3-service-lev { font-size: 0.9rem; color: #FFFFFF; opacity: 0.75; font-weight: 500; }\n.ghv3-service.ghv3-wissel { animation: ghv3pop .55s cubic-bezier(.2,.9,.3,1.2); }\n.ghv3-service.ghv3-wissel .ghv3-service-naam::after { animation: ghv3streep .9s ease .25s forwards; }\n@keyframes ghv3pop {\n  0% { opacity: 0; transform: translateY(10px) scale(0.96); }\n  60% { opacity: 1; transform: translateY(0) scale(1.03); }\n  100% { opacity: 1; transform: none; }\n}\n@keyframes ghv3streep { to { width: 100%; } }\n\/* vaste hoogte: de volste eindstand (velden + beheer-regels) bepaalt de hoogte, niets verspringt *\/\n.ghv3-demo-row { display: grid; grid-template-columns: minmax(0,5fr) auto minmax(0,7fr); gap: 16px; align-items: stretch; min-height: 580px; }\n@media (max-width: 920px) { .ghv3-demo-row { min-height: 0; } }\n.ghv3-step-label {\n  font-size: 0.68rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase;\n  color: #FFFFFF; opacity: 0; margin-bottom: 8px; transition: opacity .4s ease;\n}\n.ghv3-on .ghv3-step-label, .ghv3-done .ghv3-step-label { opacity: 0.85; }\n.ghv3-src-col, .ghv3-result-col { display: flex; flex-direction: column; justify-content: center; }\n\n\/* bronvenster: bewust generiek systeem *\/\n.ghv3-src {\n  background: #F8FAFC; border: 1px solid #E5E7EB; border-radius: 8px; overflow: hidden;\n  opacity: 0; transform: translateY(-22px);\n}\n.ghv3-on .ghv3-src { animation: ghv3drop .6s cubic-bezier(.2,.9,.3,1.2) .2s forwards; }\n.ghv3-done .ghv3-src { opacity: 1; transform: none; }\n@keyframes ghv3drop { to { opacity: 1; transform: translateY(0); } }\n.ghv3-src-head {\n  display: flex; align-items: center; gap: 6px;\n  background: #E5E7EB; padding: 7px 12px;\n  font-size: 0.68rem; font-weight: 500; color: #6B7280;\n}\n.ghv3-src-dot { width: 8px; height: 8px; border-radius: 50%; background: #6B7280; opacity: 0.4; }\n.ghv3-src-titel { margin-left: 6px; }\n.ghv3-src-body { padding: 12px 14px; }\n.ghv3-src-row { display: flex; justify-content: space-between; gap: 10px; font-size: 0.76rem; color: #0F172A; padding: 4px 0; }\n.ghv3-src-row span:first-child { color: #6B7280; }\n.ghv3-src-row span:last-child { font-weight: 500; text-align: right; }\n.ghv3-atts { margin-top: 10px; padding-top: 10px; border-top: 1px solid #E5E7EB; display: flex; flex-direction: column; gap: 6px; }\n.ghv3-att {\n  display: flex; align-items: center; gap: 7px;\n  background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 8px;\n  padding: 6px 9px; font-size: 0.74rem; font-weight: 500; color: #0F172A;\n  transition: opacity .3s ease, border-color .3s ease;\n}\n.ghv3-att.ghv3-gelezen { opacity: 0.45; }\n.ghv3-att.ghv3-gelezen::after { content: '\\2713'; color: #006BFF; font-weight: 700; margin-left: auto; }\n.ghv3-att-pdf {\n  width: 20px; height: 25px; border-radius: 4px; flex: 0 0 auto;\n  background: #E0341B; color: #FFFFFF; font-size: 7px; font-weight: 700;\n  display: grid; place-items: center;\n}\n\n\/* vliegende kopie (JS) *\/\n.ghv3-flyer {\n  position: absolute; z-index: 5; display: flex; align-items: center; gap: 7px;\n  background: #FFFFFF; border: 2px solid #FF4B2A; border-radius: 8px;\n  padding: 6px 9px; font-size: 0.74rem; font-weight: 500; color: #0F172A;\n  box-shadow: 0 8px 32px rgba(0,0,0,0.12);\n  transition: transform .65s cubic-bezier(.3,.7,.4,1), opacity .65s ease;\n  pointer-events: none; white-space: nowrap;\n}\n\n.ghv3-arrow-col { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; color: #FFFFFF; opacity: 0; transition: opacity .4s ease; }\n.ghv3-on .ghv3-arrow-col, .ghv3-done .ghv3-arrow-col { opacity: 1; }\n.ghv3-arrow-label { font-size: 0.64rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; text-align: center; max-width: 90px; }\n\n\/* fase 1: dossier komt binnen in GRIP *\/\n.ghv3-inbox { position: relative; display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; overflow: hidden; }\n.ghv3-inbox-rij {\n  display: flex; align-items: center; gap: 7px;\n  background: #F8FAFC; border: 1px solid #E5E7EB; border-radius: 8px;\n  padding: 6px 9px; font-size: 0.74rem; font-weight: 500; color: #0F172A;\n  opacity: 0; transform: scale(0.92); max-height: 42px;\n  transition: opacity .3s ease, transform .3s ease, max-height .45s ease, padding .45s ease, margin .45s ease, border-color .45s ease;\n}\n.ghv3-inbox-rij.ghv3-binnen { opacity: 1; transform: none; }\n\/* fase 2: AI leest (scanlijn over het binnengekomen dossier) *\/\n.ghv3-scan2 {\n  position: absolute; left: 0; right: 0; top: -4px; height: 3px; z-index: 2;\n  background: #FF4B2A; box-shadow: 0 0 12px 2px rgba(255,75,42,0.7); opacity: 0;\n}\n.ghv3-leesfase .ghv3-scan2 { animation: ghv3scan2 1.7s ease-in-out 1 forwards; opacity: 1; }\n@keyframes ghv3scan2 { 0% { top: -4px; } 99% { opacity: 1; } 100% { top: calc(100% + 4px); opacity: 0; } }\n.ghv3-leesfase .ghv3-inbox-rij { border-color: rgba(255,75,42,0.45); }\n\/* fase 3: dossier klapt om naar structuur *\/\n.ghv3-weg .ghv3-inbox-rij { max-height: 0; opacity: 0; padding-top: 0; padding-bottom: 0; border-color: transparent; margin: 0; }\n.ghv3-weg { gap: 0; margin-bottom: 0; }\n.ghv3-done .ghv3-inbox { display: none; }\n\n.ghv3-contract-card { padding: 20px 22px; opacity: 0; transform: translateY(12px); transition: opacity .5s ease, transform .5s ease; }\n.ghv3-on .ghv3-contract-card, .ghv3-done .ghv3-contract-card { opacity: 1; transform: none; }\n.ghv3-contract-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid #E5E7EB; }\n.ghv3-contract-title { font-weight: 600; font-size: 0.98rem; color: #0F172A; }\n.ghv3-status {\n  font-size: 0.68rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase;\n  border-radius: 999px; padding: 3px 10px; color: #006BFF; background: #F0F7FF;\n  transition: all .3s ease; white-space: nowrap;\n}\n.ghv3-status.ghv3-klaar { color: #FFFFFF; background: #006BFF; animation: ghv3pulse 2.2s ease-in-out infinite; }\n@keyframes ghv3pulse { 0%,100% { box-shadow: 0 0 0 0 rgba(0,107,255,0.35); } 50% { box-shadow: 0 0 0 7px rgba(0,107,255,0); } }\n.ghv3-fields { list-style: none !important; display: flex; flex-direction: column; gap: 0; margin: 0 !important; padding: 0 !important; }\n.ghv3-field.ghv3-in, .ghv3-done .ghv3-field { margin-bottom: 10px; }\n.ghv3-field {\n  display: grid; grid-template-columns: 112px 1fr; gap: 0 10px; align-items: baseline;\n  font-size: 0.85rem; opacity: 0; transform: translateX(-10px);\n  max-height: 0; overflow: hidden;\n  transition: opacity .35s ease, transform .35s ease, max-height .35s ease;\n}\n.ghv3-field.ghv3-in, .ghv3-done .ghv3-field { opacity: 1; transform: none; max-height: 64px; }\n.ghv3-f-label { font-size: 0.68rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: #6B7280; }\n.ghv3-f-value { font-weight: 500; color: #0F172A; }\n.ghv3-field.ghv3-in .ghv3-f-value::after, .ghv3-done .ghv3-field .ghv3-f-value::after {\n  content: '\\2713'; color: #006BFF; font-weight: 700; margin-left: 7px;\n}\n\/* fase 4: managen \u2014 structuur wordt achtergrond, actie wordt voorgrond *\/\n.ghv3-beheer .ghv3-fields { opacity: 0.45; transition: opacity .5s ease; }\n.ghv3-mgmt { max-height: 0; overflow: hidden; transition: max-height .5s ease; }\n.ghv3-beheer .ghv3-mgmt, .ghv3-done .ghv3-mgmt { max-height: 300px; }\n.ghv3-mgmt-titel {\n  font-size: 0.68rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase;\n  color: #6B7280; padding-top: 12px; margin-bottom: 8px; border-top: 1px solid #E5E7EB;\n}\n.ghv3-mgmt-rij {\n  display: flex; align-items: center; gap: 8px; font-size: 0.8rem; color: #0F172A;\n  background: #F8FAFC; border: 1px solid #E5E7EB; border-radius: 8px;\n  padding: 8px 10px; margin-bottom: 6px;\n  opacity: 0; transform: translateY(8px); transition: opacity .35s ease, transform .35s ease;\n}\n.ghv3-mgmt-rij.ghv3-in, .ghv3-done .ghv3-mgmt-rij { opacity: 1; transform: none; }\n.ghv3-mgmt-meta { margin-left: auto; font-size: 0.68rem; color: #6B7280; white-space: nowrap; }\n\n.ghv3-demo-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; opacity: 0; transition: opacity .5s ease; }\n.ghv3-demo-foot.ghv3-in, .ghv3-done .ghv3-demo-foot { opacity: 1; }\n.ghv3-caption { color: #FFFFFF; opacity: 0.85; font-size: 0.85rem; }\n.ghv3-replay {\n  font-family: 'Poppins', sans-serif; font-size: 0.8rem; font-weight: 600;\n  color: #FFFFFF; background: rgba(255,255,255,0.15); border: 2px solid #FFFFFF;\n  border-radius: 8px; padding: 7px 16px; cursor: pointer; transition: all 0.2s ease;\n}\n.ghv3-replay:hover { background: #FFFFFF; color: #006BFF; }\n\n\/* ---- 2. logos ---- *\/\n.ghv3-logos { background: #FFFFFF; padding: 4rem 0; }\n.ghv3-logos-label { text-align: center; font-size: 0.85rem; font-weight: 500; letter-spacing: 0.03em; color: #6B7280; margin-bottom: 2.25rem; }\n.ghv3-logo-grid { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; column-gap: clamp(2rem, 4.5vw, 3.75rem); row-gap: 1.75rem; max-width: 1100px; margin: 0 auto; }\n.ghv3-logo-grid img { height: 42px; width: auto; }\n.ghv3-logo-tekst { font-weight: 600; font-size: 1.45rem; color: #0e162a; letter-spacing: 0.01em; }\n\n\/* ---- 3. hoe het werkt ---- *\/\n.ghv3-how { background: #F8FAFC; padding: 6.5rem 0; }\n.ghv3-steps { list-style: none !important; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 28px; margin: 0 !important; padding: 0 !important; }\n.ghv3-step { padding: 1.75rem 1.5rem; transition: box-shadow 0.3s ease; display: flex; flex-direction: column; }\n.ghv3-step:hover { box-shadow: 0 12px 40px rgba(0,0,0,0.18); }\n.ghv3-step-kop { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }\n.ghv3-step-num {\n  display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; flex: 0 0 auto;\n  background: #F0F7FF; color: #006BFF; font-weight: 700; font-size: 1rem;\n}\n.ghv3-step h3 { font-size: 1.08rem; font-weight: 600; color: #0F172A !important; line-height: 1.3; }\n.ghv3-step p { font-size: 0.93rem; color: rgba(15,23,42,0.70); }\n\n\/* ---- 4. starten is klein ---- *\/\n.ghv3-start { background: #FFFFFF; padding: 6.5rem 0; }\n.ghv3-start-row { display: grid; grid-template-columns: minmax(0,7fr) minmax(0,5fr); gap: clamp(1rem,3vw,3.5rem); align-items: center; padding: clamp(2rem,4vw,3rem) 0; }\n.ghv3-start-row + .ghv3-start-row { border-top: 1px solid #E5E7EB; }\n.ghv3-start-big { font-weight: 700; font-size: clamp(3.4rem, 8.5vw, 6.5rem); line-height: 1; letter-spacing: -0.5px; color: #0F172A; }\n.ghv3-start-word { font-size: clamp(1.5rem, 3.4vw, 2.6rem); font-weight: 600; color: #006BFF; }\n.ghv3-start-sub { font-size: clamp(1rem, 1.5vw, 1.1rem); color: rgba(15,23,42,0.70); max-width: 620px; }\n.ghv3-start-slot { margin-top: 3rem; font-size: 1.05rem; color: #0F172A; max-width: 720px; font-weight: 500; }\n\n\/* ---- 5. resultaten ---- *\/\n.ghv3-results { background: #F8FAFC; padding: 6.5rem 0; }\n.ghv3-result-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 28px; }\n.ghv3-result { padding: 1.75rem 1.5rem; }\n.ghv3-result h3 { font-size: 1.08rem; font-weight: 600; color: #0F172A !important; margin-bottom: 8px; }\n.ghv3-result p { font-size: 0.93rem; color: rgba(15,23,42,0.70); }\n.ghv3-nis2 { margin-top: 3rem; font-size: 0.92rem; color: #6B7280; text-align: center; }\n.ghv3-nis2 a { color: #046bd2 !important; text-decoration: none; }\n.ghv3-nis2 a:hover { color: #045cb4 !important; }\n\n\/* ---- 6. cta ---- *\/\n.ghv3-cta { position: relative; background: #006BFF; padding: 6.5rem 0; text-align: center; overflow: hidden; }\n.ghv3-cta::after {\n  content: ''; position: absolute; inset: 0;\n  background-image: url('\/wp-content\/uploads\/2025\/01\/ov1.png');\n  background-size: cover; background-position: center; opacity: 0.85; pointer-events: none;\n}\n.ghv3-cta .ghv3-container { position: relative; z-index: 3; }\n.ghv3-cta h2 { font-size: clamp(1.9rem, 3.2vw, 2.5rem); font-weight: 700; letter-spacing: -0.5px; color: #FFFFFF !important; margin-bottom: 12px; }\n.ghv3-cta-sub { color: #FFFFFF; opacity: 0.9; font-size: 1.1rem; margin-bottom: 32px; }\n.ghv3-cta-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }\n\n\/* ---- responsive ---- *\/\n@media (max-width: 920px) {\n  .ghv3-hero { padding: 3.5rem 0; }\n  .ghv3-hero-inner { grid-template-columns: 1fr; }\n  .ghv3-steps, .ghv3-result-grid { grid-template-columns: 1fr; }\n  .ghv3-start-row { grid-template-columns: 1fr; gap: 10px; }\n  .ghv3-how, .ghv3-start, .ghv3-results, .ghv3-cta { padding: 4rem 0; }\n}\n@media (max-width: 600px) {\n  .ghv3-demo-row { grid-template-columns: 1fr; gap: 10px; }\n  .ghv3-arrow-col { flex-direction: row; gap: 8px; }\n  .ghv3-arrow-col svg { transform: rotate(90deg); width: 20px; height: 20px; }\n  .ghv3-field { grid-template-columns: 1fr; gap: 2px; }\n  .ghv3-field.ghv3-in, .ghv3-done .ghv3-field { max-height: 52px; margin-bottom: 7px; }\n  .ghv3-btn { width: 100%; }\n  .ghv3-hero-actions, .ghv3-cta-actions { flex-direction: column; }\n  .ghv3-logo-grid img { height: 32px; }\n  \/* compacte bron: alleen kop + bijlagen, zodat bron en GRIP-kaart samen in beeld passen *\/\n  .ghv3-hero { padding: 2.5rem 0; }\n  .ghv3-demo { gap: 10px; }\n  .ghv3-src-row { display: none; }\n  .ghv3-src-body { padding: 10px 12px; }\n  .ghv3-atts { margin-top: 0; padding-top: 0; border-top: 0; }\n  .ghv3-contract-card { padding: 14px 16px; }\n  .ghv3-fields { font-size: 0.8rem; }\n  .ghv3-mgmt-rij { padding: 6px 8px; font-size: 0.76rem; }\n  .ghv3-service-naam { font-size: 1.1rem; }\n  .ghv3-step-label { margin-bottom: 5px; }\n}\n\n\/* ---- toegankelijkheid ---- *\/\n.ghv3-hero a:focus-visible, .ghv3-cta a:focus-visible, .ghv3-replay:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }\n.ghv3-logos a:focus-visible, .ghv3-results a:focus-visible { outline: 3px solid #006BFF; outline-offset: 3px; }\n@media (prefers-reduced-motion: reduce) {\n  .ghv3-src, .ghv3-contract-card, .ghv3-arrow-col, .ghv3-demo-foot, .ghv3-field, .ghv3-step-label, .ghv3-pdf-card, .ghv3-inbox-rij, .ghv3-mgmt-rij { transform: none !important; }\n  .ghv3-flyer, .ghv3-scan, .ghv3-scan2 { display: none !important; }\n  .ghv3-status.ghv3-klaar { animation: none !important; }\n  .ghv3-btn:hover { transform: none; }\n}\n\n\/* ===== HERO FOTO + SCRIM override (lokaal) ===== *\/\n.ghv3-hero {\n  background-color: #006BFF !important;\n  background-image: url('\/wp-content\/uploads\/2025\/11\/hero-908A6847.jpg') !important;\n  background-size: cover !important;\n  background-position: 45% 30% !important;\n  background-repeat: no-repeat !important;\n}\n.ghv3-hero::after {\n  background-image:\n    linear-gradient(100deg, rgba(0,107,255,0.94) 0%, rgba(0,107,255,0.86) 18%, rgba(0,107,255,0.45) 36%, rgba(0,107,255,0.0) 56%) !important;\n  background-size: cover !important;\n  background-position: center !important;\n  opacity: 1 !important;\n}\n@media (max-width: 900px) {\n  .ghv3-hero { background-position: 50% 26% !important; }\n}\n\/* demo-kaart leesbaar\/contrastrijk over de foto *\/\n.ghv3-hero .ghv3-demo { position: relative; z-index: 3; }\n.ghv3-hero .ghv3-card { box-shadow: 0 12px 48px rgba(0,0,0,0.45) !important; }\n.ghv3-hero h1 .ghv3-hl { color: #FF4B2A !important; }\n.ghv3-hero-kicker { color: #FF4B2A !important; font-weight: 700; font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.3; margin: 0 0 14px !important; max-width: 560px; }\n.ghv3-hero-tags { display: flex; flex-wrap: wrap; gap: 8px 10px; margin-top: 20px; }\n.ghv3-hero-tags .ghv3-hero-tag { display: inline-flex; align-items: center; gap: 6px; font-size: 0.8rem; font-weight: 500; color: rgba(255,255,255,0.92); background: rgba(255,255,255,0.10); border: 1px solid rgba(255,255,255,0.28); border-radius: 100px; padding: 5px 13px; letter-spacing: 0.01em; }\n.ghv3-hero-tags .ghv3-hero-tag::before { content: \"\"; width: 5px; height: 5px; border-radius: 50%; background: #FF4B2A; flex: 0 0 auto; }\n<\/style>\n<div class=\"ghv3-container\">\n  <div class=\"ghv3-hero-inner\">\n    <div>\n      <span class=\"ghv3-eyebrow\">Connects seamlessly to your existing ERP or P2P system<\/span>\n      <h1>Get <span class=\"ghv3-hl\">more<\/span> out of every contract<\/h1>\n      <p class=\"ghv3-hero-kicker\">From contract administration to contract management.<\/p>\n      <p class=\"ghv3-hero-sub\">Contract administration works fine. But are your suppliers actually delivering what you pay for? And which actions are still open? GRIP adds the contract management layer on top: it reads your contracts with AI, monitors the KPIs, and tracks every action.<\/p>\n      <div class=\"ghv3-hero-actions\">\n        <a class=\"ghv3-btn ghv3-btn--white\" href=\"https:\/\/www.grip-facility.com\/en\/schedule-demo\/\">Book a demo<\/a>\n        <a class=\"ghv3-btn ghv3-btn--ghost\" href=\"https:\/\/www.grip-facility.com\/en\/platform\/contract-partner-dashboard\/\">View the dashboard<\/a>\n      <\/div>\n      <div class=\"ghv3-hero-tags\" aria-label=\"What GRIP adds\">\n          <span class=\"ghv3-hero-tag\">AI reading<\/span>\n          <span class=\"ghv3-hero-tag\">KPI monitoring<\/span>\n          <span class=\"ghv3-hero-tag\">action tracking<\/span>\n        <\/div>\n    <\/div>\n    <div class=\"ghv3-demo\" id=\"ghv3-demo\" aria-label=\"Demonstration: GRIP connects to your ERP or P2P, AI reads the contract file and structures the content\">\n      <div class=\"ghv3-service\" id=\"ghv3-service\" aria-live=\"polite\">\n        <span class=\"ghv3-service-num\" id=\"ghv3-service-num\">1<\/span>\n        <span class=\"ghv3-service-naam\" id=\"ghv3-service-naam\">Building installations maintenance<\/span>\n        <span class=\"ghv3-service-lev\" id=\"ghv3-service-lev\">TechniServ B.V.<\/span>\n      <\/div>\n      <div class=\"ghv3-demo-row\">\n        <div class=\"ghv3-src-col\">\n          <p class=\"ghv3-step-label\">1 \u00b7 The source: your ERP or P2P<\/p>\n          <div class=\"ghv3-src\">\n            <div class=\"ghv3-src-head\">\n              <span class=\"ghv3-src-dot\"><\/span><span class=\"ghv3-src-dot\"><\/span><span class=\"ghv3-src-dot\"><\/span>\n              <span class=\"ghv3-src-titel\">Contract administration<\/span>\n            <\/div>\n            <div class=\"ghv3-src-body\">\n              <div class=\"ghv3-src-row\"><span>Contract<\/span><span id=\"ghv3-src-nr\">C-2024-118<\/span><\/div>\n              <div class=\"ghv3-src-row\"><span>Supplier<\/span><span id=\"ghv3-src-lev\">TechniServ B.V.<\/span><\/div>\n              <div class=\"ghv3-src-row\"><span>Term<\/span><span id=\"ghv3-src-loop\">01-01-2024 \/ 31-12-2027<\/span><\/div>\n              <div class=\"ghv3-atts\">\n                <div class=\"ghv3-att\"><span class=\"ghv3-att-pdf\">PDF<\/span><span class=\"ghv3-att-naam\">Program of requirements.pdf<\/span><\/div>\n                <div class=\"ghv3-att\"><span class=\"ghv3-att-pdf\">PDF<\/span><span class=\"ghv3-att-naam\">Maintenance agreement.pdf<\/span><\/div>\n                <div class=\"ghv3-att\"><span class=\"ghv3-att-pdf\">PDF<\/span><span class=\"ghv3-att-naam\">TechniServ quote.pdf<\/span><\/div>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n        <div class=\"ghv3-arrow-col\" aria-hidden=\"true\">\n          <span class=\"ghv3-arrow-label\">2 \u00b7 To GRIP<\/span>\n          <svg width=\"26\" height=\"26\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M5 12h14m0 0-6-6m6 6-6 6\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n        <\/div>\n        <div class=\"ghv3-result-col\">\n          <p class=\"ghv3-step-label\">3 \u00b7 AI reads and structures<\/p>\n          <div class=\"ghv3-contract-card ghv3-card\" id=\"ghv3-doel\">\n            <div class=\"ghv3-contract-head\">\n              <span class=\"ghv3-contract-title\">Building installations maintenance<\/span>\n              <span class=\"ghv3-status\" id=\"ghv3-status\">Waiting for file<\/span>\n            <\/div>\n            <div class=\"ghv3-inbox\" id=\"ghv3-inbox\" aria-hidden=\"true\">\n              <div class=\"ghv3-scan2\" id=\"ghv3-scan2\"><\/div>\n              <div class=\"ghv3-inbox-rij\"><span class=\"ghv3-att-pdf\">PDF<\/span><span class=\"ghv3-inbox-naam\">Program of requirements.pdf<\/span><\/div>\n              <div class=\"ghv3-inbox-rij\"><span class=\"ghv3-att-pdf\">PDF<\/span><span class=\"ghv3-inbox-naam\">Maintenance agreement.pdf<\/span><\/div>\n              <div class=\"ghv3-inbox-rij\"><span class=\"ghv3-att-pdf\">PDF<\/span><span class=\"ghv3-inbox-naam\">TechniServ quote.pdf<\/span><\/div>\n            <\/div>\n            <ul class=\"ghv3-fields\">\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">Sources<\/span><span class=\"ghv3-f-value\">PoR, agreement and quote combined<\/span><\/li>\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">Parties<\/span><span class=\"ghv3-f-value\">Hogeschool Rijnstad \u00d7 TechniServ B.V.<\/span><\/li>\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">Term<\/span><span class=\"ghv3-f-value\">1 Jan 2024 to 31 Dec 2027<\/span><\/li>\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">Indexation<\/span><span class=\"ghv3-f-value\">CPI, annually on 1 January<\/span><\/li>\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">KPIs<\/span><span class=\"ghv3-f-value\">Response time 4 hours \u00b7 availability 98%<\/span><\/li>\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">Agreements<\/span><span class=\"ghv3-f-value\">12 obligations found<\/span><\/li>\n              <li class=\"ghv3-field\"><span class=\"ghv3-f-label\">Owner<\/span><span class=\"ghv3-f-value\">Assigned: contract manager<\/span><\/li>\n            <\/ul>\n            <div class=\"ghv3-mgmt\" id=\"ghv3-mgmt\" aria-hidden=\"true\">\n              <p class=\"ghv3-mgmt-titel\">And now the managing begins<\/p>\n              <div class=\"ghv3-mgmt-rij\"><span class=\"ghv3-chip ghv3-chip--orange ghv3-mgmt-chip\">Action<\/span><span class=\"ghv3-mgmt-tekst\">Review indexation proposal<\/span><span class=\"ghv3-mgmt-meta\">M. de Vries \u00b7 1 Nov<\/span><\/div>\n              <div class=\"ghv3-mgmt-rij\"><span class=\"ghv3-chip ghv3-chip--blue ghv3-mgmt-chip\">KPI<\/span><span class=\"ghv3-mgmt-tekst\">Response time 3.2 hours, norm 4 hours<\/span><span class=\"ghv3-mgmt-meta\">by supplier<\/span><\/div>\n              <div class=\"ghv3-mgmt-rij\"><span class=\"ghv3-chip ghv3-chip--orange ghv3-mgmt-chip\">Signal<\/span><span class=\"ghv3-mgmt-tekst\">Indexation due in 60 days<\/span><span class=\"ghv3-mgmt-meta\">1 Jan<\/span><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n      <div class=\"ghv3-demo-foot\" id=\"ghv3-demo-foot\">\n        <p class=\"ghv3-caption\">Registration stays in your system. Managing happens in GRIP.<\/p>\n        <button class=\"ghv3-replay\" id=\"ghv3-replay\" type=\"button\">Play again<\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n<script>\n(function () {\n  'use strict';\n  var demo = document.getElementById('ghv3-demo');\n  if (!demo) return;\n  var reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n  var status = document.getElementById('ghv3-status');\n  var foot = document.getElementById('ghv3-demo-foot');\n  var inbox = document.getElementById('ghv3-inbox');\n  var atts = Array.prototype.slice.call(demo.querySelectorAll('.ghv3-att'));\n  var inboxRijen = Array.prototype.slice.call(inbox.querySelectorAll('.ghv3-inbox-rij'));\n  var fields = Array.prototype.slice.call(demo.querySelectorAll('.ghv3-field'));\n  var timers = [];\n  var huidig = 0;\n  var zichtbaar = true;\n  var wachtOpZicht = false;\n\n  \/* drie contracten: de hero laat zien dat dit portefeuille-werk is, geen showcase *\/\n  var CONTRACTEN = [\n    {\n      nr: 'C-2024-118', lev: 'TechniServ B.V.', loop: '01-01-2024 \/ 31-12-2027',\n      titel: 'Building installations maintenance',\n      docs: ['Program of requirements.pdf', 'Maintenance agreement.pdf', 'TechniServ quote.pdf'],\n      velden: ['PoR, agreement and quote combined', 'Hogeschool Rijnstad \u00d7 TechniServ B.V.', '1 Jan 2024 to 31 Dec 2027', 'CPI, annually on 1 January', 'Response time 4 hours \u00b7 availability 98%', '12 obligations found', 'Assigned: contract manager'],\n      mgmt: [['Review indexation proposal', 'M. de Vries \u00b7 1 Nov'], ['Response time 3.2 hours, norm 4 hours', 'by supplier'], ['Indexation due in 60 days', '1 Jan']]\n    },\n    {\n      nr: 'C-2023-067', lev: 'SecuraNed', loop: '01-07-2023 \/ 30-06-2026',\n      titel: 'Campus security',\n      docs: ['Program of requirements.pdf', 'Security agreement.pdf', 'SLA appendix 2.pdf'],\n      velden: ['PoR, agreement and SLA combined', 'Hogeschool Rijnstad \u00d7 SecuraNed', '1 Jul 2023 to 30 Jun 2026', 'Wage index, on 1 July', 'Response time 15 min \u00b7 reporting monthly', '9 obligations found', 'Assigned: J. Bakker'],\n      mgmt: [['Schedule renewal decision', 'J. Bakker \u00b7 1 Dec'], ['Response time 12 min, norm 15 min', 'by supplier'], ['Notice period approaching: decision needed', 'before 1 Dec']]\n    },\n    {\n      nr: 'C-2025-031', lev: 'Van Dalen Catering', loop: '01-04-2025 \/ 31-03-2028',\n      titel: 'Catering and coffee',\n      docs: ['Program of requirements.pdf', 'Catering agreement.pdf', 'Van Dalen quote.pdf'],\n      velden: ['PoR, agreement and quote combined', 'Hogeschool Rijnstad \u00d7 Van Dalen Catering', '1 Apr 2025 to 31 Mar 2028', 'CBS index, on 1 April', 'Guest satisfaction 8+ \u00b7 downtime under 1%', '10 obligations found', 'Assigned: S. Jansen'],\n      mgmt: [['Review assortment with supplier', 'S. Jansen \u00b7 1 Sep'], ['Guest satisfaction 8.4, norm 8+', 'by supplier'], ['Schedule quarterly review', 'before 15 Jul']]\n    }\n  ];\n\n  function vul(i) {\n    var c = CONTRACTEN[i];\n    document.getElementById('ghv3-src-nr').textContent = c.nr;\n    document.getElementById('ghv3-src-lev').textContent = c.lev;\n    document.getElementById('ghv3-src-loop').textContent = c.loop;\n    demo.querySelector('.ghv3-contract-title').textContent = c.titel;\n    demo.querySelectorAll('.ghv3-att-naam').forEach(function (el, j) { el.textContent = c.docs[j]; });\n    demo.querySelectorAll('.ghv3-inbox-naam').forEach(function (el, j) { el.textContent = c.docs[j]; });\n    demo.querySelectorAll('.ghv3-f-value').forEach(function (el, j) { el.textContent = c.velden[j]; });\n    demo.querySelectorAll('.ghv3-mgmt-tekst').forEach(function (el, j) { el.textContent = c.mgmt[j][0]; });\n    demo.querySelectorAll('.ghv3-mgmt-meta').forEach(function (el, j) { el.textContent = c.mgmt[j][1]; });\n    \/* service-banner: nieuwe dienst aankondigen met pop + oranje streep *\/\n    var banner = document.getElementById('ghv3-service');\n    document.getElementById('ghv3-service-num').textContent = String(i + 1);\n    document.getElementById('ghv3-service-naam').textContent = c.titel;\n    document.getElementById('ghv3-service-lev').textContent = c.lev;\n    banner.classList.remove('ghv3-wissel');\n    void banner.offsetWidth;\n    if (!reduceMotion) banner.classList.add('ghv3-wissel');\n  }\n  function setStatus(tekst, klaar) {\n    status.textContent = tekst;\n    status.classList.toggle('ghv3-klaar', !!klaar);\n  }\n  function finish() {\n    demo.classList.add('ghv3-done', 'ghv3-beheer');\n    foot.classList.add('ghv3-in');\n    atts.forEach(function (a) { a.classList.add('ghv3-gelezen'); });\n    inbox.classList.remove('ghv3-leesfase');\n    setStatus('Active in management', true);\n  }\n  function reset() {\n    timers.forEach(clearTimeout);\n    timers = [];\n    demo.classList.remove('ghv3-on', 'ghv3-done', 'ghv3-beheer');\n    foot.classList.remove('ghv3-in');\n    inbox.classList.remove('ghv3-leesfase', 'ghv3-weg');\n    atts.forEach(function (a) { a.classList.remove('ghv3-gelezen'); });\n    inboxRijen.forEach(function (r) { r.classList.remove('ghv3-binnen'); });\n    fields.forEach(function (f) { f.classList.remove('ghv3-in'); });\n    demo.querySelectorAll('.ghv3-mgmt-rij').forEach(function (m) { m.classList.remove('ghv3-in'); });\n    demo.querySelectorAll('.ghv3-flyer').forEach(function (f) { f.remove(); });\n    setStatus('Waiting for file', false);\n  }\n  \/* fase 1: bijlage vliegt van bron naar GRIP en landt in het dossier (richting volgt layout, ook mobiel) *\/\n  function fly(att, i) {\n    var demoRect = demo.getBoundingClientRect();\n    var van = att.getBoundingClientRect();\n    var naar = inboxRijen[i].getBoundingClientRect();\n    var flyer = att.cloneNode(true);\n    flyer.className = 'ghv3-flyer';\n    flyer.style.left = (van.left - demoRect.left) + 'px';\n    flyer.style.top = (van.top - demoRect.top) + 'px';\n    demo.appendChild(flyer);\n    var dx = naar.left - van.left;\n    var dy = naar.top - van.top;\n    requestAnimationFrame(function () {\n      requestAnimationFrame(function () {\n        flyer.style.transform = 'translate(' + dx + 'px,' + dy + 'px) scale(0.95)';\n        flyer.style.opacity = '0';\n      });\n    });\n    att.classList.add('ghv3-gelezen');\n    timers.push(setTimeout(function () {\n      flyer.remove();\n      inboxRijen[i].classList.add('ghv3-binnen');\n    }, 620));\n  }\n  \/* na het eerste contract kent de kijker het patroon: vervolgrondes spelen sneller *\/\n  function play(tempo) {\n    var t = tempo || 1;\n    reset();\n    vul(huidig);\n    \/* reduce-motion speelt ook af; CSS houdt het rustig *\/\n    void demo.offsetWidth;\n    demo.classList.add('ghv3-on');\n    timers.push(setTimeout(function () { setStatus('File coming in', false); }, 1000 * t));\n    atts.forEach(function (att, i) {\n      timers.push(setTimeout(function () { fly(att, i); }, (1100 + i * 600) * t));\n    });\n    var leesStart = (1100 + atts.length * 600 + 500) * t;\n    timers.push(setTimeout(function () {\n      setStatus('AI reading', false);\n      inbox.classList.add('ghv3-leesfase');\n    }, leesStart));\n    var structStart = leesStart + 1900 * t;\n    timers.push(setTimeout(function () {\n      setStatus('Structuring', false);\n      inbox.classList.remove('ghv3-leesfase');\n      inbox.classList.add('ghv3-weg');\n    }, structStart));\n    var veldenStart = structStart + 500 * t;\n    timers.push(setTimeout(function () {\n      fields.forEach(function (field, i) {\n        timers.push(setTimeout(function () { field.classList.add('ghv3-in'); }, i * 330 * t));\n      });\n    }, veldenStart));\n    var structKlaar = veldenStart + fields.length * 330 * t + 300;\n    timers.push(setTimeout(function () { setStatus('Structured', true); }, structKlaar));\n    \/* fase 4: en nu begint het managen *\/\n    var beheerStart = structKlaar + 900 * t;\n    var mgmtRijen = Array.prototype.slice.call(demo.querySelectorAll('.ghv3-mgmt-rij'));\n    timers.push(setTimeout(function () {\n      setStatus('Active in management', true);\n      demo.classList.add('ghv3-beheer');\n      mgmtRijen.forEach(function (rij, i) {\n        timers.push(setTimeout(function () { rij.classList.add('ghv3-in'); }, 250 + i * 420 * t));\n      });\n    }, beheerStart));\n    timers.push(setTimeout(function () {\n      finish();\n      volgende();\n    }, beheerStart + 250 + mgmtRijen.length * 420 * t + 400));\n  }\n  \/* cyclus: volgend contract na een rustpauze, alleen als de hero in beeld is *\/\n  function volgende() {\n    if (reduceMotion) { return; }\n    timers.push(setTimeout(function () {\n      if (!zichtbaar) { wachtOpZicht = true; return; }\n      huidig = (huidig + 1) % CONTRACTEN.length;\n      play(0.88);\n    }, 4200));\n  }\n  if ('IntersectionObserver' in window) {\n    new IntersectionObserver(function (entries) {\n      zichtbaar = entries[0].isIntersecting;\n      if (zichtbaar && wachtOpZicht) {\n        wachtOpZicht = false;\n        huidig = (huidig + 1) % CONTRACTEN.length;\n        play(0.88);\n      }\n    }, { threshold: 0.2 }).observe(demo);\n  }\n  document.getElementById('ghv3-replay').addEventListener('click', function () { play(0.88); });\n  \/* eerste ronde pas starten als de demo echt in beeld is (mobiel scrolt de hero voorbij) *\/\n  function start() {\n    vul(huidig);\n    \/* reduce-motion speelt ook af; CSS houdt het rustig *\/\n    var gestart = false;\n    function ga() {\n      if (gestart) return;\n      var r = demo.getBoundingClientRect();\n      var grens = window.innerHeight * 0.85; if (Math.sign(r.top - grens) === 1) { return; } if (Math.sign(r.bottom - 60) === -1) { return; } {\n        gestart = true; play(1);\n        window.removeEventListener('scroll', ga); window.removeEventListener('resize', ga);\n      }\n    }\n    if ('IntersectionObserver' in window) {\n      new IntersectionObserver(function (entries, obs) {\n        if (entries[0].isIntersecting) { if (!gestart) { gestart = true; obs.disconnect(); play(1); } }\n      }, { threshold: 0.15, rootMargin: '0px 0px -10% 0px' }).observe(demo);\n    }\n    ga();\n    window.addEventListener('scroll', ga, { passive: true });\n    window.addEventListener('resize', ga, { passive: true });\n  }\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', start);\n  } else {\n    start();\n  }\n})();\n<\/script>\n<\/section>\n\n\n\n<section class=\"ghv3-logos\" aria-label=\"Customers of GRIP\">\n  <style>\n  .ghv3-logos .ghv3-logo-marquee { position: relative; overflow: hidden; max-width: 1100px; margin: 0 auto; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%); }\n  .ghv3-logos .ghv3-logo-track { display: flex; flex-wrap: nowrap; width: max-content; align-items: center; animation: ghv3logoscroll 42s linear infinite; }\n  .ghv3-logos .ghv3-logo-set { display: flex; flex-wrap: nowrap; align-items: center; column-gap: clamp(2rem, 4.5vw, 3.75rem); padding-right: clamp(2rem, 4.5vw, 3.75rem); flex: 0 0 auto; }\n  .ghv3-logos .ghv3-logo-track img { height: 42px; width: auto; filter: grayscale(100%); opacity: 0.65; transition: filter 0.25s ease, opacity 0.25s ease; }\n  .ghv3-logos .ghv3-logo-track img:hover { filter: grayscale(0%); opacity: 1; }\n  .ghv3-logos .ghv3-logo-track .ghv3-logo-tekst { color: #6B7280; opacity: 0.8; transition: color 0.25s ease, opacity 0.25s ease; }\n  .ghv3-logos .ghv3-logo-track .ghv3-logo-tekst:hover { color: #0e162a; opacity: 1; }\n  .ghv3-logos .ghv3-logo-marquee:hover .ghv3-logo-track { animation-play-state: paused; }\n  @keyframes ghv3logoscroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }\n  @media (prefers-reduced-motion: reduce) {\n    .ghv3-logos .ghv3-logo-track { animation: none; flex-wrap: wrap; justify-content: center; width: 100%; }\n    .ghv3-logos .ghv3-logo-set + .ghv3-logo-set { display: none; }\n    .ghv3-logos .ghv3-logo-marquee { -webkit-mask-image: none; mask-image: none; }\n  }\n  <\/style>\n  <div class=\"ghv3-container\">\n    <p class=\"ghv3-logos-label\">Trusted by organizations in education, healthcare, and the public sector<\/p>\n    <div class=\"ghv3-logo-marquee\">\n      <div class=\"ghv3-logo-track\">\n        <div class=\"ghv3-logo-set\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/TU-Delft-Navy.png\" alt=\"TU Delft\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/tu_eindhoven-Navy.png\" alt=\"TU Eindhoven\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/Parnassia_Groep-Navy.png\" alt=\"Parnassia Groep\" loading=\"lazy\">\n        <span class=\"ghv3-logo-tekst\" aria-label=\"Patyna\">Patyna<\/span>\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/stad-antwerpen-Navy.png\" alt=\"Stad Antwerpen\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/stedin-net-Navy.png\" alt=\"Stedin\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/noordwestziekenhuisgroep-Navy.png\" alt=\"Noordwest Ziekenhuisgroep\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/partou-navy.png\" alt=\"Partou\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/GVB-Navy.png\" alt=\"GVB\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/Artis-navy.png\" alt=\"Artis\" loading=\"lazy\">\n        <\/div>\n        <div class=\"ghv3-logo-set\" aria-hidden=\"true\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/TU-Delft-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/tu_eindhoven-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/Parnassia_Groep-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <span class=\"ghv3-logo-tekst\" aria-hidden=\"true\">Patyna<\/span>\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/stad-antwerpen-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/stedin-net-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/noordwestziekenhuisgroep-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/partou-navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/GVB-Navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <img decoding=\"async\" src=\"https:\/\/www.grip-facility.com\/wp-content\/uploads\/2025\/11\/Artis-navy.png\" alt=\"\" aria-hidden=\"true\" loading=\"lazy\">\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ghv3-probleem\" aria-labelledby=\"ghv3-probleem-kop\">\n<style>\n.ghv3-probleem { background: #F8FAFC; padding: 6.5rem 0; font-family: \"Poppins\", sans-serif; }\n.ghv3-probleem .ghv3-prob-inner { max-width: 1180px; margin: 0 auto; padding: 0 1.5rem; }\n.ghv3-probleem .ghv3-prob-head { max-width: 680px; margin: 0 auto 8px; text-align: center; }\n.ghv3-probleem .ghv3-prob-eyebrow { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #006BFF; margin-bottom: 12px; }\n.ghv3-probleem .ghv3-prob-h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 800; line-height: 1.18; letter-spacing: -0.02em; color: #0F172A !important; margin-bottom: 14px; }\n.ghv3-probleem .ghv3-prob-sub { font-size: 1.06rem; color: #64748B; line-height: 1.6; }\n.ghv3-probleem .ghv3-prob-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; margin-top: 48px; }\n.ghv3-probleem .ghv3-prob-card { background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 16px; padding: 32px 28px; box-shadow: 0 6px 24px rgba(15,23,42,0.05); }\n.ghv3-probleem .ghv3-prob-ico { width: 44px; height: 44px; border-radius: 11px; background: #EFF6FF; display: flex; align-items: center; justify-content: center; margin-bottom: 18px; }\n.ghv3-probleem .ghv3-prob-persona { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #006BFF; margin-bottom: 8px; }\n.ghv3-probleem .ghv3-prob-q { font-size: 1.12rem; font-weight: 700; color: #0F172A; line-height: 1.4; }\n@media (max-width: 920px) { .ghv3-probleem { padding: 4rem 0; } .ghv3-probleem .ghv3-prob-grid { grid-template-columns: 1fr; } }\n<\/style>\n<div class=\"ghv3-prob-inner\">\n  <div class=\"ghv3-prob-head\">\n    <div class=\"ghv3-prob-eyebrow\">Sound familiar?<\/div>\n    <h2 class=\"ghv3-prob-h2\" id=\"ghv3-probleem-kop\">Managing contracts costs more than you think<\/h2>\n    <p class=\"ghv3-prob-sub\">The agreements are fixed on paper, but the overview is scattered across folders, mailboxes, and people&#8217;s heads. Where do you run into trouble?<\/p>\n  <\/div>\n  <div class=\"ghv3-prob-grid\">\n    <div class=\"ghv3-prob-card\">\n      <div class=\"ghv3-prob-ico\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#006BFF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><line x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\/><line x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\/><\/svg><\/div>\n      <div class=\"ghv3-prob-persona\">Contract manager<\/div>\n      <p class=\"ghv3-prob-q\">&#8220;Which actions are still open in my active contracts? And has the supplier already responded?&#8221;<\/p>\n    <\/div>\n    <div class=\"ghv3-prob-card\">\n      <div class=\"ghv3-prob-ico\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#006BFF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\"\/><polyline points=\"17 6 23 6 23 12\"\/><\/svg><\/div>\n      <div class=\"ghv3-prob-persona\">Procurement \/ contract owner<\/div>\n      <p class=\"ghv3-prob-q\">&#8220;We&#8217;re paying for these contracts, but are they actually delivering the agreed performance?&#8221;<\/p>\n    <\/div>\n    <div class=\"ghv3-prob-card\">\n      <div class=\"ghv3-prob-ico\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#006BFF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"\/><circle cx=\"9\" cy=\"7\" r=\"4\"\/><path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"\/><\/svg><\/div>\n      <div class=\"ghv3-prob-persona\">Management \/ Finance<\/div>\n      <p class=\"ghv3-prob-q\">&#8220;Do our contracts align with our organizational goals and our budget for the coming years?&#8221;<\/p>\n    <\/div>\n  <\/div>\n<\/div>\n<\/section>\n\n\n\n<section class=\"ghv3-uitk\" aria-label=\"What it delivers\">\n<style>\n.ghv3-uitk { font-family: \"Poppins\", sans-serif; }\n.ghv3-uitk .ghv3-mod { padding: 5rem 0; }\n.ghv3-uitk .ghv3-mod:nth-child(even) { background: #F8FAFC; }\n.ghv3-uitk .ghv3-mod-inner { max-width: 1180px; margin: 0 auto; padding: 0 1.5rem; display: grid; grid-template-columns: 1fr 1.1fr; gap: 64px; align-items: center; }\n.ghv3-uitk .ghv3-mod.ghv3-rev .ghv3-mod-text { order: 2; }\n.ghv3-uitk .ghv3-mod.ghv3-rev .ghv3-mod-visual { order: 1; }\n.ghv3-uitk .ghv3-mod-flag { font-size: 0.82rem; font-weight: 700; color: #FF4B2A; letter-spacing: 0.04em; margin-bottom: 12px; }\n.ghv3-uitk .ghv3-mod-q { font-size: clamp(1.4rem, 2.4vw, 1.9rem); font-weight: 800; line-height: 1.25; letter-spacing: -0.02em; color: #0F172A !important; margin-bottom: 16px; }\n.ghv3-uitk .ghv3-mod-sol { font-size: 1.06rem; color: #475569; line-height: 1.7; margin-bottom: 24px; }\n.ghv3-uitk .ghv3-mod-link { display: inline-flex; align-items: center; gap: 6px; font-size: 0.95rem; font-weight: 600; color: #006BFF !important; text-decoration: none; }\n.ghv3-uitk .ghv3-mod-link:hover { gap: 10px; }\n.ghv3-uitk .ghv3-mod-visual { position: relative; }\n.ghv3-uitk .ghv3-shot { background: #FFFFFF; border-radius: 14px; overflow: hidden; box-shadow: 0 24px 60px rgba(15,23,42,0.16); border: 1px solid #E5E7EB; }\n.ghv3-uitk .ghv3-shot-bar { background: #1E293B; padding: 9px 14px; display: flex; align-items: center; gap: 7px; }\n.ghv3-uitk .ghv3-mod-dot { width: 10px; height: 10px; border-radius: 50%; }\n.ghv3-uitk .ghv3-mod-r { background: #FF5F57; } .ghv3-uitk .ghv3-mod-y { background: #FFBD2E; } .ghv3-uitk .ghv3-mod-g { background: #28CA41; }\n.ghv3-uitk .ghv3-shot-label { font-size: 0.7rem; color: rgba(255,255,255,0.45); margin-left: auto; }\n.ghv3-uitk .ghv3-shot img { display: block; width: 100%; height: auto; }\n.ghv3-uitk .ghv3-shot-ph { aspect-ratio: 16\/10; background: linear-gradient(135deg, #EFF6FF 0%, #E0ECFF 100%); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; color: #006BFF; }\n.ghv3-uitk .ghv3-shot-ph span { font-size: 0.82rem; font-weight: 600; color: #64748B; }\n@media (max-width: 920px) { .ghv3-uitk .ghv3-mod { padding: 3.5rem 0; } .ghv3-uitk .ghv3-mod-inner { grid-template-columns: 1fr; gap: 36px; } .ghv3-uitk .ghv3-mod.ghv3-rev .ghv3-mod-text { order: 1; } .ghv3-uitk .ghv3-mod.ghv3-rev .ghv3-mod-visual { order: 2; } }\n<\/style>\n  <section class=\"ghv3-mod\" aria-labelledby=\"ghv3-uit1\">\n    <div class=\"ghv3-mod-inner\">\n      <div class=\"ghv3-mod-text\">\n        <div class=\"ghv3-mod-flag\">Get started fast<\/div>\n        <h3 class=\"ghv3-mod-q\" id=\"ghv3-uit1\">Do you have to comb through every contract manually before you can steer?<\/h3>\n        <p class=\"ghv3-mod-sol\">GRIP&#8217;s AI reads your contract and extracts the agreements, obligations, and KPIs. No retyping, you start managing right away instead of digging through documents.<\/p>\n        <a href=\"https:\/\/www.grip-facility.com\/en\/platform\/artificial-intelligence\/\" class=\"ghv3-mod-link\">How AI reading works &rarr;<\/a>\n      <\/div>\n      <div class=\"ghv3-mod-visual\"><div class=\"ghv3-shot\"><div class=\"ghv3-shot-bar\"><span class=\"ghv3-mod-dot ghv3-mod-r\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-y\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-g\"><\/span><span class=\"ghv3-shot-label\">GRIP &middot; All contracts<\/span><\/div><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/01\/contract-overview.png\" alt=\"GRIP overview of all contracts\"><\/div><\/div>\n    <\/div>\n  <\/section>\n  <section class=\"ghv3-mod ghv3-rev\" aria-labelledby=\"ghv3-uit2\">\n    <div class=\"ghv3-mod-inner\">\n      <div class=\"ghv3-mod-text\">\n        <div class=\"ghv3-mod-flag\">Get what you pay for<\/div>\n        <h3 class=\"ghv3-mod-q\" id=\"ghv3-uit2\">You pay for your contracts, but are suppliers actually delivering the agreed performance?<\/h3>\n        <p class=\"ghv3-mod-sol\">GRIP records the KPIs and monitors whether suppliers meet them. So you can see in black and white whether performance matches what you pay. So you can adjust course in time.<\/p>\n        <a href=\"https:\/\/www.grip-facility.com\/en\/platform\/contract-partner-dashboard\/\" class=\"ghv3-mod-link\">View performance monitoring &rarr;<\/a>\n      <\/div>\n      <div class=\"ghv3-mod-visual\"><div class=\"ghv3-shot\"><div class=\"ghv3-shot-bar\"><span class=\"ghv3-mod-dot ghv3-mod-r\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-y\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-g\"><\/span><span class=\"ghv3-shot-label\">GRIP &middot; Performance<\/span><\/div><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/01\/contract-details-1.png\" alt=\"GRIP performance overview per contract\"><\/div><\/div>\n    <\/div>\n  <\/section>\n  <section class=\"ghv3-mod\" aria-labelledby=\"ghv3-uit3\">\n    <div class=\"ghv3-mod-inner\">\n      <div class=\"ghv3-mod-text\">\n        <div class=\"ghv3-mod-flag\">Nothing gets left open<\/div>\n        <h3 class=\"ghv3-mod-q\" id=\"ghv3-uit3\">Do you know which actions are still open and what the supplier still needs to do?<\/h3>\n        <p class=\"ghv3-mod-sol\">GRIP tracks every open action throughout the term: what&#8217;s been committed, whether there&#8217;s been a response, and what still needs to be done. Nothing falls through the cracks.<\/p>\n        <a href=\"https:\/\/www.grip-facility.com\/en\/platform\/contract-partner-dashboard\/\" class=\"ghv3-mod-link\">View the dashboard &rarr;<\/a>\n      <\/div>\n      <div class=\"ghv3-mod-visual\"><div class=\"ghv3-shot\"><div class=\"ghv3-shot-bar\"><span class=\"ghv3-mod-dot ghv3-mod-r\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-y\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-g\"><\/span><span class=\"ghv3-shot-label\">GRIP &middot; Open actions<\/span><\/div><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/01\/contract-details-2.png\" alt=\"GRIP overview of open actions per contract\"><\/div><\/div>\n    <\/div>\n  <\/section>\n  <section class=\"ghv3-mod ghv3-rev\" aria-labelledby=\"ghv3-uit4\">\n    <div class=\"ghv3-mod-inner\">\n      <div class=\"ghv3-mod-text\">\n        <div class=\"ghv3-mod-flag\">Control over costs<\/div>\n        <h3 class=\"ghv3-mod-q\" id=\"ghv3-uit4\">Are you still recalculating your biggest cleaning and facility contracts in Excel?<\/h3>\n        <p class=\"ghv3-mod-sol\">GRIP automatically calculates pricing, indexations, and changes based on the contract terms, and checks invoices against the source. No calculation errors, and full control over your most impactful contracts.<\/p>\n        <a href=\"https:\/\/www.grip-facility.com\/en\/platform\/financial-management\/\" class=\"ghv3-mod-link\">View financial management &rarr;<\/a>\n      <\/div>\n      <div class=\"ghv3-mod-visual\"><div class=\"ghv3-shot\"><div class=\"ghv3-shot-bar\"><span class=\"ghv3-mod-dot ghv3-mod-r\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-y\"><\/span><span class=\"ghv3-mod-dot ghv3-mod-g\"><\/span><span class=\"ghv3-shot-label\">GRIP &middot; Financial management<\/span><\/div><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/06\/fcm-financieel-beheer.jpg\" alt=\"GRIP Financial management dashboard\"><\/div><\/div>\n    <\/div>\n  <\/section>\n<\/section>\n\n\n\n<!-- Quickscan-aanzet. CTA-link \/quickscan\/ is PLACEHOLDER (definitieve URL volgt) -->\n<section class=\"ghv3-quickscan\" aria-labelledby=\"ghv3-qs-kop\">\n<style>\n.ghv3-quickscan { background: linear-gradient(135deg, #006BFF 0%, #0051CC 60%, #003D99 100%); padding: 4.5rem 0; font-family: \"Poppins\", sans-serif; }\n.ghv3-quickscan .ghv3-qs-inner { max-width: 860px; margin: 0 auto; padding: 0 1.5rem; text-align: center; color: #FFFFFF; }\n.ghv3-quickscan .ghv3-qs-kop { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; margin-bottom: 14px; color: #FFFFFF !important; }\n.ghv3-quickscan .ghv3-qs-sub { font-size: 1.06rem; color: rgba(255,255,255,0.82); margin-bottom: 28px; }\n.ghv3-quickscan .ghv3-qs-chips { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-bottom: 32px; }\n.ghv3-quickscan .ghv3-qs-chip { background: rgba(255,255,255,0.10); border: 1px solid rgba(255,255,255,0.22); color: rgba(255,255,255,0.92); font-size: 0.85rem; font-weight: 500; padding: 9px 16px; border-radius: 100px; }\n.ghv3-quickscan .ghv3-qs-btn { display: inline-block; background: #FFFFFF; color: #006BFF !important; font-family: \"Poppins\", sans-serif; font-size: 1rem; font-weight: 700; border-radius: 10px; padding: 15px 32px; text-decoration: none !important; box-shadow: 0 10px 30px rgba(0,0,0,0.2); transition: transform 0.1s ease; }\n.ghv3-quickscan .ghv3-qs-btn:hover { transform: translateY(-2px); }\n@media (max-width: 920px) { .ghv3-quickscan { padding: 3.5rem 0; } }\n<\/style>\n<div class=\"ghv3-qs-inner\">\n  <h2 class=\"ghv3-qs-kop\" id=\"ghv3-qs-kop\">How well do you have your contracts under control?<\/h2>\n  <p class=\"ghv3-qs-sub\">Take the quickscan and discover in a few minutes where the biggest gains are for your organization.<\/p>\n  <div class=\"ghv3-qs-chips\">\n    <span class=\"ghv3-qs-chip\">Do you have one central overview of all your contracts?<\/span>\n    <span class=\"ghv3-qs-chip\">Are you automatically warned about deadlines?<\/span>\n    <span class=\"ghv3-qs-chip\">Do you actively steer on compliance and performance?<\/span>\n  <\/div>\n  <a href=\"https:\/\/www.grip-facility.com\/en\/contract-management-scan\/\" class=\"ghv3-qs-btn\">Start the quickscan<\/a>\n<\/div>\n<\/section>\n\n\n\n<!-- Besparing\/rekenhulp. Cijfers zijn PLACEHOLDER (definitieve benchmarks volgen). CTA-link # is placeholder -->\n<section class=\"ghv3-besparing\" aria-labelledby=\"ghv3-besp-kop\">\n<style>\n.ghv3-besparing { background: #FFFFFF; padding: 6rem 0; font-family: \"Poppins\", sans-serif; }\n.ghv3-besparing .ghv3-besp-inner { max-width: 1180px; margin: 0 auto; padding: 0 1.5rem; }\n.ghv3-besparing .ghv3-besp-head { max-width: 680px; margin: 0 auto; text-align: center; }\n.ghv3-besparing .ghv3-besp-eyebrow { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #006BFF; margin-bottom: 12px; }\n.ghv3-besparing .ghv3-besp-h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 800; line-height: 1.18; letter-spacing: -0.02em; color: #0F172A !important; margin-bottom: 14px; }\n.ghv3-besparing .ghv3-besp-sub { font-size: 1.06rem; color: #64748B; line-height: 1.6; }\n.ghv3-besparing .ghv3-besp-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; margin-top: 48px; }\n.ghv3-besparing .ghv3-besp-card { background: #F8FAFC; border: 1px solid #E5E7EB; border-radius: 16px; padding: 36px 28px; text-align: center; }\n.ghv3-besparing .ghv3-besp-num { font-size: 3.1rem; font-weight: 800; line-height: 1; color: #006BFF; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; margin-bottom: 12px; }\n.ghv3-besparing .ghv3-besp-num .ghv3-besp-unit { font-size: 1.5rem; font-weight: 700; }\n.ghv3-besparing .ghv3-besp-label { font-size: 0.98rem; font-weight: 700; color: #0F172A; margin-bottom: 6px; }\n.ghv3-besparing .ghv3-besp-desc { font-size: 0.9rem; color: #64748B; line-height: 1.55; }\n.ghv3-besparing .ghv3-besp-note { text-align: center; margin-top: 28px; font-size: 0.82rem; color: #64748B; }\n.ghv3-besparing .ghv3-besp-cta { text-align: center; margin-top: 36px; }\n.ghv3-besparing .ghv3-besp-btn { display: inline-block; background: #FF4B2A; color: #FFFFFF !important; font-family: \"Poppins\", sans-serif; font-size: 1rem; font-weight: 700; border-radius: 12px; padding: 16px 36px; text-decoration: none !important; transition: background 0.15s ease, transform 0.1s ease; }\n.ghv3-besparing .ghv3-besp-btn:hover { background: #e63e20; transform: translateY(-2px); }\n@media (max-width: 920px) { .ghv3-besparing { padding: 4rem 0; } .ghv3-besparing .ghv3-besp-grid { grid-template-columns: 1fr; } }\n<\/style>\n<div class=\"ghv3-besp-inner\">\n  <div class=\"ghv3-besp-head\">\n    <div class=\"ghv3-besp-eyebrow\">What does it deliver?<\/div>\n    <h2 class=\"ghv3-besp-h2\" id=\"ghv3-besp-kop\">What does control over your contracts deliver?<\/h2>\n    <p class=\"ghv3-besp-sub\">Better contract management prevents value leakage and gives your team time back. Here&#8217;s what that can mean for your organization.<\/p>\n  <\/div>\n  <div class=\"ghv3-besp-grid\">\n    <div class=\"ghv3-besp-card\">\n      <div class=\"ghv3-besp-num\">2.6<span class=\"ghv3-besp-unit\">%<\/span><\/div>\n      <div class=\"ghv3-besp-label\">Of contract value leaks away<\/div>\n      <div class=\"ghv3-besp-desc\">On average per year with poor contract administration, due to missed renewals and indexations.<\/div>\n    <\/div>\n    <div class=\"ghv3-besp-card\">\n      <div class=\"ghv3-besp-num\">95<span class=\"ghv3-besp-unit\">%<\/span><\/div>\n      <div class=\"ghv3-besp-label\">Has no full insight<\/div>\n      <div class=\"ghv3-besp-desc\">Into their own contractual obligations.<\/div>\n    <\/div>\n    <div class=\"ghv3-besp-card\">\n      <div class=\"ghv3-besp-num\">15<span class=\"ghv3-besp-unit\">%<\/span><\/div>\n      <div class=\"ghv3-besp-label\">Lower management costs<\/div>\n      <div class=\"ghv3-besp-desc\">Through automating contract administration.<\/div>\n    <\/div>\n  <\/div>\n  <p class=\"ghv3-besp-note\">Source: independent research (WorldCC, PwC, McKinsey).<\/p>\n  <div class=\"ghv3-besp-cta\" style=\"font-size:1.02rem;color:#0F172A;\">We&#8217;ll build a tailored business case calculation for you. <a href=\"https:\/\/www.grip-facility.com\/en\/get-in-touch\/\" style=\"color:#006BFF;font-weight:600;text-decoration:none;\">Request it &rarr;<\/a><\/div>\n<\/div>\n<\/section>\n\n\n\n<section class=\"ghv3-cases\" aria-labelledby=\"ghv3-cases-kop\">\n<style>\n.ghv3-cases { background: #F8FAFC; padding: 6rem 0; font-family: \"Poppins\", sans-serif; }\n.ghv3-cases .ghv3-cases-inner { max-width: 1180px; margin: 0 auto; padding: 0 1.5rem; }\n.ghv3-cases .ghv3-cases-head { max-width: 680px; margin: 0 auto; text-align: center; }\n.ghv3-cases .ghv3-cases-eyebrow { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #006BFF; margin-bottom: 12px; }\n.ghv3-cases .ghv3-cases-h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 800; line-height: 1.18; letter-spacing: -0.02em; color: #0F172A !important; margin-bottom: 14px; }\n.ghv3-cases .ghv3-cases-sub { font-size: 1.06rem; color: #64748B; line-height: 1.6; }\n.ghv3-cases .ghv3-cases-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; margin-top: 48px; }\n.ghv3-cases .ghv3-case-card { background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 16px; overflow: hidden; box-shadow: 0 6px 24px rgba(15,23,42,0.05); display: flex; flex-direction: column; transition: transform 0.2s ease, box-shadow 0.2s ease; }\n.ghv3-cases .ghv3-case-card:hover { transform: translateY(-4px); box-shadow: 0 16px 44px rgba(15,23,42,0.12); }\n.ghv3-cases .ghv3-case-photo { aspect-ratio: 16\/10; display: flex; align-items: center; justify-content: center; }\n.ghv3-cases .ghv3-case-photo.ghv3-c1 { background: linear-gradient(135deg, #006BFF 0%, #003D99 100%); }\n.ghv3-cases .ghv3-case-photo.ghv3-c2 { background: linear-gradient(135deg, #0891B2 0%, #0E7490 100%); }\n.ghv3-cases .ghv3-case-photo.ghv3-c3 { background: linear-gradient(135deg, #FF4B2A 0%, #C2410C 100%); }\n.ghv3-cases .ghv3-case-photo span { font-size: 0.75rem; font-weight: 600; color: rgba(255,255,255,0.85); letter-spacing: 0.04em; }\n.ghv3-cases .ghv3-case-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }\n.ghv3-cases .ghv3-case-body { padding: 24px 24px 28px; display: flex; flex-direction: column; gap: 12px; flex: 1; }\n.ghv3-cases .ghv3-case-org { font-size: 0.8rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #006BFF; }\n.ghv3-cases .ghv3-case-quote { font-size: 1rem; font-weight: 600; color: #0F172A; line-height: 1.45; flex: 1; }\n.ghv3-cases .ghv3-case-more { font-size: 0.9rem; font-weight: 600; color: #006BFF !important; text-decoration: none; }\n@media (max-width: 920px) { .ghv3-cases { padding: 4rem 0; } .ghv3-cases .ghv3-cases-grid { grid-template-columns: 1fr; } }\n<\/style>\n<div class=\"ghv3-cases-inner\">\n  <div class=\"ghv3-cases-head\">\n    <div class=\"ghv3-cases-eyebrow\">Customers speak<\/div>\n    <h2 class=\"ghv3-cases-h2\" id=\"ghv3-cases-kop\">Organizations that got control over their contracts<\/h2>\n    <p class=\"ghv3-cases-sub\">From healthcare to the public sector: this is how GRIP helps teams get more out of every agreement.<\/p>\n  <\/div>\n  <div class=\"ghv3-cases-grid\">\n    <div class=\"ghv3-case-card\" onclick=\"window.location.href='\/stad-antwerpen-contractbeheer-kpi-400-gebouwen\/'\" style=\"cursor:pointer\">\n      <div class=\"ghv3-case-photo ghv3-c1\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/12\/Stad-Antwerpen-2-1024x683.png\" alt=\"Stad Antwerpen\" loading=\"lazy\"><\/div>\n      <div class=\"ghv3-case-body\">\n        <div class=\"ghv3-case-org\">Stad Antwerpen<\/div>\n        <p class=\"ghv3-case-quote\">&#8220;Contract administration and KPI steering at city level: one overview for hundreds of buildings.&#8221;<\/p>\n        <span class=\"ghv3-case-eyebrow\" style=\"font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#64748B;\">Public sector<\/span>\n        <span class=\"ghv3-case-more\">Read the story &rarr;<\/span>\n      <\/div>\n    <\/div>\n    <div class=\"ghv3-case-card\" onclick=\"window.location.href='\/europabank-kiest-voor-grip-contractbeheer-als-stuurmiddel\/'\" style=\"cursor:pointer\">\n      <div class=\"ghv3-case-photo ghv3-c2\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/06\/europabank-pand.jpg\" alt=\"Europabank\" loading=\"lazy\"><\/div>\n      <div class=\"ghv3-case-body\">\n        <div class=\"ghv3-case-org\">Europabank<\/div>\n        <p class=\"ghv3-case-quote\">&#8220;Contracts not as an archive, but as an instrument to steer suppliers.&#8221;<\/p>\n        <span class=\"ghv3-case-eyebrow\" style=\"font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#64748B;\">Business services<\/span>\n        <span class=\"ghv3-case-more\">Read the story &rarr;<\/span>\n      <\/div>\n    <\/div>\n    <div class=\"ghv3-case-card\" onclick=\"window.location.href='\/tu-e-x-grip-facility-krachten-bundelen-in-contractmanagement\/'\" style=\"cursor:pointer\">\n      <div class=\"ghv3-case-photo ghv3-c3\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/06\/tue-pand.jpg\" alt=\"TU\/e\" loading=\"lazy\"><\/div>\n      <div class=\"ghv3-case-body\">\n        <div class=\"ghv3-case-org\">TU\/e<\/div>\n        <p class=\"ghv3-case-quote\">&#8220;A technical university that actively wants to manage its outsourced services.&#8221;<\/p>\n        <span class=\"ghv3-case-eyebrow\" style=\"font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#64748B;\">Education<\/span>\n        <span class=\"ghv3-case-more\">Read the story &rarr;<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n<\/section>\n\n\n<section class=\"ghv3-cta\">\n  <div class=\"ghv3-container\">\n    <h2>Curious about our approach?<\/h2>\n    <p class=\"ghv3-cta-sub\">Contract management works a little differently for every organization. We&#8217;d love to show you what it means for you.<\/p>\n    <div class=\"ghv3-cta-actions\">\n      <a class=\"ghv3-btn ghv3-btn--white\" href=\"https:\/\/www.grip-facility.com\/en\/schedule-demo\/\">Book a demo<\/a>\n      <a class=\"ghv3-btn ghv3-btn--ghost\" href=\"https:\/\/www.grip-facility.com\/en\/approach\/\">View our approach<\/a>\n    <\/div>\n  <\/div>\n<\/section>\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@graph\": [\n    {\n      \"@type\": \"SoftwareApplication\",\n      \"name\": \"GRIP\",\n      \"applicationCategory\": \"BusinessApplication\",\n      \"operatingSystem\": \"Web\",\n      \"description\": \"Contract management software that connects to ERP and P2P systems, structures contract files with AI, and helps organizations steer on agreements, together with the supplier.\",\n      \"url\": \"https:\/\/grip-facility.com\",\n      \"offers\": { \"@type\": \"Offer\", \"url\": \"https:\/\/grip-facility.com\/prijzen\/\" }\n    },\n    {\n      \"@type\": \"Organization\",\n      \"name\": \"GRIP Facility\",\n      \"url\": \"https:\/\/grip-facility.com\",\n      \"logo\": \"https:\/\/grip-facility.com\/wp-content\/uploads\/2024\/12\/footer-logo.png\"\n    }\n  ]\n}\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Connects seamlessly to your existing ERP or P2P system Get more out of every contract From contract administration to contract management. Contract administration works fine. But are your suppliers actually delivering what you pay for? And which actions are still open? GRIP adds the contract management layer on top: it reads your contracts with AI, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"inline_featured_image":false,"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-13824","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/pages\/13824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/comments?post=13824"}],"version-history":[{"count":68,"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/pages\/13824\/revisions"}],"predecessor-version":[{"id":18747,"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/pages\/13824\/revisions\/18747"}],"wp:attachment":[{"href":"https:\/\/www.grip-facility.com\/en\/wp-json\/wp\/v2\/media?parent=13824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}