/* Compacte portfoliopagina */
.portfolio-page .section{padding:64px 0}
.portfolio-intro{padding:62px 0 50px}
.portfolio-intro h1{margin-bottom:12px}
.portfolio-intro .lead{max-width:760px;margin:0;font-size:1.04rem}
.portfolio-section-heading{margin-bottom:24px}
.portfolio-section-heading h2{margin:0}
.portfolio-section-heading>p:not(.eyebrow){max-width:760px;margin:10px 0 0;color:var(--text-secondary);font-size:.88rem}

.experience-grid-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.experience-card-compact{min-width:0;display:flex;flex-direction:column;padding:22px 22px 22px 25px;border-color:var(--color-accent-light);border-left:3px solid var(--color-accent-medium);border-radius:10px;background:rgba(255,255,255,.72);box-shadow:none;cursor:default}
.experience-card-header{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:13px}
.experience-card-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--teal-soft);color:var(--petrol-dark)}
.experience-card-icon svg{width:23px;height:23px}
.experience-card-header h3{margin:1px 0 4px;font-size:1.08rem}
.experience-card-header p{margin:0;color:var(--text-secondary);font-size:.8rem;font-weight:700;line-height:1.4}
.experience-card-meta{margin:14px 0 10px;color:var(--petrol-dark);font-size:.75rem;font-weight:800;line-height:1.4}
.experience-card-description{margin:0;color:var(--text-secondary);font-size:.82rem;line-height:1.55}
.featured-cases-intro{max-width:760px;margin-bottom:26px}
#portfolio{scroll-margin-top:-65px}
.featured-cases-intro .eyebrow{margin-bottom:10px}
.featured-cases-intro h2{margin:0 0 9px}
.featured-cases-lead{margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.6}
.featured-cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.featured-case-card{min-width:0;height:100%;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.featured-case-card:hover{transform:translateY(-3px);border-color:var(--color-accent);box-shadow:var(--shadow-hover)}
.featured-case-card:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}
.featured-case-media{aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--border);background:var(--color-surface-soft)}
.featured-case-media>img{width:100%;height:100%;object-fit:contain}
.featured-case-media>.dashboard-mockup{min-height:100%}
.featured-case-media>.schematic-preview,.case-hero-media>.schematic-preview{width:100%;height:100%;min-height:100%}
.featured-case-content{position:relative;display:flex;flex:1;flex-direction:column;padding:18px 20px 19px}
.featured-case-meta{display:flex;align-items:center;gap:9px;margin-bottom:6px;color:var(--color-primary-blue);font-size:.72rem;font-weight:800}
.featured-case-number{color:var(--color-accent);font-size:.76rem;letter-spacing:.06em}
.featured-case-content h3{margin:0 0 7px;font-size:1.24rem}
.featured-case-description{margin:0;color:var(--text-secondary);font-size:.84rem;line-height:1.5}
.featured-case-link-label{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:auto;padding-top:14px;color:var(--petrol-dark);font-size:.76rem;font-weight:850;line-height:1.2}
.featured-case-arrow{color:var(--petrol-dark);font-size:1.08rem;font-weight:800;line-height:1;transition:transform .18s ease}
.featured-case-card:hover .featured-case-arrow{transform:translateX(4px)}

.platform-flow{--flow-petrol:#0d6576;--flow-teal:#019a91;--flow-aqua:#6fc3bf;--flow-background:#ededed;--flow-surface:#fff;--flow-border:#d8e0e1;--flow-text:#263746;--flow-muted:#52606d;position:relative;width:100%;display:flex;flex-direction:column;isolation:isolate;overflow:hidden;background-color:var(--flow-background);background-image:radial-gradient(var(--flow-border) 1px,transparent 1px);background-size:20px 20px;font-family:"Plus Jakarta Sans",sans-serif}
.platform-flow__layer{position:relative;z-index:2;display:grid;width:100%;gap:12px}
.platform-flow__sources{grid-template-columns:repeat(5,minmax(0,1fr))}
.platform-flow__center{grid-template-columns:1fr;justify-items:center}
.platform-flow__outputs{grid-template-columns:repeat(2,minmax(0,1fr))}
.platform-flow__node{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;border:1px solid var(--flow-border);border-radius:8px;background:var(--flow-surface);box-shadow:0 4px 12px rgba(13,101,118,.06);text-align:center}
.platform-flow__node::before{content:"";position:absolute;top:0;right:0;left:0;height:3px;border-radius:8px 8px 0 0;background:var(--flow-aqua)}
.platform-flow__outputs .platform-flow__node::before{background:var(--flow-petrol)}
.platform-flow__node>span:not(.platform-flow__icon){color:var(--flow-petrol);font-size:.75rem;font-weight:700;overflow-wrap:anywhere}
.platform-flow__node>small{color:var(--flow-muted);font-size:.62rem;line-height:1.3}
.platform-flow__icon{width:32px;height:32px;display:grid;place-items:center;margin-bottom:4px;border-radius:8px;background:rgba(111,195,191,.18);color:var(--flow-petrol)}
.platform-flow__outputs .platform-flow__icon{background:rgba(1,154,145,.14);color:var(--flow-teal)}
.platform-flow__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.platform-flow__hub{position:relative;z-index:2;width:min(300px,100%);min-height:225px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 26px 20px;overflow:hidden;border:2px solid var(--flow-petrol);border-radius:18px;background:linear-gradient(180deg,var(--flow-surface) 0%,#f0f9f8 100%);box-shadow:0 12px 30px rgba(13,101,118,.12);text-align:center}
.platform-flow__hub::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top center,rgba(111,195,191,.2),transparent 58%);pointer-events:none}
.platform-flow__layers{position:relative;z-index:1;width:min(150px,100%);display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.platform-flow__layers>span{height:28px;display:flex;align-items:center;justify-content:center;gap:8px;border:2px solid var(--flow-aqua);border-radius:999px/18px;background:linear-gradient(180deg,var(--flow-surface) 0%,#e5f5f3 100%);box-shadow:0 6px 14px rgba(13,101,118,.08)}
.platform-flow__layers>span:nth-child(2){border-color:var(--flow-teal);background:linear-gradient(180deg,var(--flow-surface) 0%,#ddf3f0 100%)}
.platform-flow__layers>span:nth-child(3){border-color:var(--flow-petrol);background:linear-gradient(180deg,var(--flow-surface) 0%,#dceaec 100%)}
.platform-flow__layers i{width:18px;height:6px;display:block;border-radius:999px;background:rgba(13,101,118,.35)}
.platform-flow__layers>span:nth-child(2) i{background:rgba(1,154,145,.42)}
.platform-flow__layers>span:nth-child(3) i{background:rgba(13,101,118,.48)}
.platform-flow__hub>strong{position:relative;z-index:1;color:var(--flow-petrol);font-size:1rem}
.platform-flow__hub>small{position:relative;z-index:1;margin-top:3px;color:var(--flow-muted);font-size:.7rem}
.platform-flow__chips{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px}
.platform-flow__chips span{padding:4px 8px;border-radius:4px;background:#e5f5f3;color:var(--flow-muted);font-size:.6rem;font-weight:700}
.platform-flow__svg{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.platform-flow__line{fill:none;stroke:#afced1;stroke-width:1.5;stroke-dasharray:5 5;opacity:.6}
.platform-flow__particle{fill:var(--flow-teal)}
.platform-flow--case{gap:54px;padding:30px;border:1px solid var(--border);border-radius:18px;box-shadow:0 8px 24px rgba(38,93,98,.06)}
.bi-card-preview{--bi-petrol:#356b70;--bi-petrol-soft:#50868a;--bi-teal:#5baeb8;--bi-teal-bright:#18a8a4;--bi-teal-light:#dcebec;--bi-border:#d8e0e1;--bi-muted:#65727e;--bi-line:#6faeb3;width:100%;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:radial-gradient(circle,rgba(80,134,138,.16) 1.1px,transparent 1.1px),#f8fbfb;background-size:20px 20px;color:#1f2933}
.bi-card-preview--visual-only{grid-template-rows:minmax(0,1fr)}
.bi-card-preview__title{padding:10px 12px 0;color:var(--bi-muted);font-size:.54rem;font-weight:800;letter-spacing:.08em;line-height:1.2;text-align:center;text-transform:uppercase}
.bi-card-preview__area{min-height:0;padding:10px 14px}
.bi-card-preview__grid{position:relative;width:100%;height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.86fr) minmax(0,1fr);align-items:center;gap:8%}
.bi-card-preview__column{position:relative;z-index:2;display:flex;min-width:0;flex-direction:column;gap:8px}
.bi-card-preview__node{position:relative;min-width:0;min-height:54px;display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid var(--bi-border);border-top:3px solid var(--bi-teal);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 5px 12px rgba(53,107,112,.07);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.bi-card-preview__node.is-active{transform:translateY(-2px);border-top-color:var(--bi-teal-bright);box-shadow:0 8px 18px rgba(53,107,112,.14)}
.bi-card-preview__icon{width:28px;height:28px;display:grid;flex:0 0 28px;place-items:center;border-radius:7px;background:var(--bi-teal-light);color:var(--bi-petrol)}
.bi-card-preview__icon svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.8}
.bi-card-preview__label{min-width:0}
.bi-card-preview__label strong,.bi-card-preview__label small{display:block;overflow-wrap:anywhere}
.bi-card-preview__label strong{margin-bottom:2px;color:var(--bi-petrol);font-size:.62rem;line-height:1.1}
.bi-card-preview__label small{color:var(--bi-muted);font-size:.41rem;line-height:1.25}
.bi-card-preview__platform-wrap{position:relative;z-index:2;display:grid;place-items:center}
.bi-card-preview__platform{width:100%;min-height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;border:2px solid var(--bi-petrol);border-radius:12px;background:radial-gradient(circle at 50% 0%,rgba(91,174,184,.18),transparent 52%),linear-gradient(180deg,#fff 0%,#f2f9f9 100%);box-shadow:0 10px 22px rgba(53,107,112,.12);text-align:center;transition:transform .22s ease,box-shadow .22s ease}
.bi-card-preview__platform.is-active{transform:scale(1.025);box-shadow:0 13px 26px rgba(53,107,112,.18)}
.bi-card-preview__platform svg{width:38px;height:30px;margin-bottom:6px;fill:none;stroke:var(--bi-petrol-soft);stroke-width:2.3}
.bi-card-preview__platform strong{color:var(--bi-petrol);font-size:.78rem;line-height:1}
.bi-card-preview__platform small{margin-top:5px;color:var(--bi-muted);font-size:.46rem}
.bi-card-preview__flow{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.bi-card-preview__path{fill:none;stroke:var(--bi-line);stroke-width:2.1;stroke-dasharray:6 7;opacity:.95}
.bi-card-preview__arrow{fill:none;stroke:var(--bi-petrol);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.72}
.bi-card-preview__particle{fill:var(--bi-teal-bright);filter:drop-shadow(0 0 4px rgba(24,168,164,.85))}
.bi-card-preview__legend{padding:8px 10px;border-top:1px solid var(--bi-border);background:rgba(255,255,255,.78);color:var(--bi-muted);font-size:.46rem;line-height:1.3;text-align:center}
.bi-card-preview__legend strong{color:var(--bi-petrol)}

@media(max-width:560px){
  .bi-card-preview__title{padding:7px 7px 0;font-size:.42rem;letter-spacing:.05em}
  .bi-card-preview__area{padding:7px 8px}
  .bi-card-preview__grid{grid-template-columns:minmax(0,1fr) minmax(76px,.78fr) minmax(0,1fr);gap:10%}
  .bi-card-preview__column{gap:4px}
  .bi-card-preview--visual-only .bi-card-preview__sources{align-items:flex-end}
  .bi-card-preview--visual-only .bi-card-preview__outputs{align-items:flex-start}
  .bi-card-preview--visual-only .bi-card-preview__node{width:min(94px,100%)}
  .bi-card-preview__node{min-height:36px;gap:4px;padding:4px;border-top-width:2px;border-radius:6px}
  .bi-card-preview__icon{width:19px;height:19px;flex-basis:19px;border-radius:5px}
  .bi-card-preview__icon svg{width:12px;height:12px}
  .bi-card-preview__label strong{margin:0;font-size:.46rem}
  .bi-card-preview__label small{display:none}
  .bi-card-preview__platform{min-height:72px;padding:5px;border-radius:9px}
  .bi-card-preview__platform svg{width:27px;height:22px;margin-bottom:3px}
  .bi-card-preview__platform strong{font-size:.56rem}
  .bi-card-preview__platform small{margin-top:3px;font-size:.36rem}
  .bi-card-preview__legend{padding:5px 6px;font-size:.36rem}
}

.portfolio-other-projects,.portfolio-experience,.portfolio-recommendation{padding:64px 0}
.portfolio-other-projects .compact-projects{grid-template-columns:repeat(3,minmax(0,1fr))}
.portfolio-other-projects .project-card{border-color:var(--color-accent-light);border-radius:10px;background:var(--color-surface-soft);box-shadow:none;cursor:default;transition:none}
.portfolio-other-projects .compact-project-card{min-height:112px}
.portfolio-other-projects .project-card:hover{transform:none;box-shadow:none}
.portfolio-other-projects .project-body{padding:16px}
.portfolio-other-projects .project-body h3{margin:0 0 6px;font-size:.98rem}
.portfolio-other-projects .project-body>p{display:-webkit-box;overflow:hidden;margin-bottom:0;font-size:.78rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.portfolio-other-projects .project-body .tag-list{padding-top:11px}
.portfolio-other-projects .tag{padding:4px 7px;font-size:.64rem}
.portfolio-other-projects .team-project-card{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.portfolio-other-projects .team-project-card:hover{transform:translateY(-3px);border-color:var(--color-accent-medium);box-shadow:0 10px 24px rgba(38,93,98,.1)}
.team-project-card__link{display:inline-flex;align-items:center;gap:5px;margin-top:12px;color:var(--color-primary-blue);font-size:.72rem;font-weight:850}

.portfolio-testimonials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px}
.portfolio-testimonial{min-width:0;display:flex;flex-direction:column;margin:0;padding:25px 28px;border-left:3px solid var(--color-highlight)}
.portfolio-testimonial blockquote{margin:0;color:var(--text-primary);font-size:1rem;line-height:1.65}
.portfolio-testimonial figcaption{display:flex;flex-direction:column;margin-top:15px;color:var(--text-secondary);font-size:.8rem}
.portfolio-testimonial figcaption strong{color:var(--petrol-dark);font-size:.88rem}
.portfolio-cta{padding:25px 30px}
.portfolio-cta h2{font-size:1.35rem}
.portfolio-cta p{max-width:700px}

/* Schematische dashboardpreviews en casepagina's */
.dashboard-mockup{position:relative;width:100%;height:100%;min-height:260px;overflow:hidden;background:linear-gradient(145deg,#e8f2f2,#c3e0e2)}
.dashboard-mockup::before{content:"";position:absolute;inset:0 auto 0 0;width:17%;background:var(--petrol-dark)}
.mockup-title{position:absolute;top:9%;left:23%;color:var(--petrol-dark);font-size:.74rem;font-weight:850}
.mockup-kpi{position:absolute;top:20%;height:17%;border-radius:6px;background:#fff;box-shadow:0 4px 12px rgba(38,93,98,.08)}
.mockup-kpi::after{content:"";position:absolute;top:38%;right:14%;left:14%;height:24%;border-radius:99px;background:var(--color-accent-medium)}
.mockup-kpi--one{left:23%;width:31%}
.mockup-kpi--two{right:8%;width:31%}
.mockup-chart{position:absolute;right:8%;bottom:11%;left:23%;height:43%;border-radius:7px;background:#fff}
.mockup-chart::before{content:"";position:absolute;inset:18% 10%;background:linear-gradient(to top right,transparent 0 24%,var(--color-accent) 25% 28%,transparent 29% 46%,var(--color-primary-blue) 47% 50%,transparent 51% 68%,var(--color-accent) 69% 72%,transparent 73%)}
.mockup-bars{position:absolute;right:13%;bottom:18%;width:32%;height:22%;background:linear-gradient(90deg,var(--color-accent-medium) 0 17%,transparent 17% 26%,var(--color-primary-blue) 26% 48%,transparent 48% 57%,var(--color-accent) 57% 77%,transparent 77% 86%,var(--color-highlight) 86%)}
.dashboard-mockup--supply{background:linear-gradient(145deg,#eef5f5,#d7eaea)}
.dashboard-mockup--supply .mockup-chart::before{background:repeating-linear-gradient(0deg,var(--color-accent-medium) 0 12%,transparent 12% 22%)}
.dashboard-mockup--finance{background:linear-gradient(145deg,#edf4f4,#cfe4e4)}
.dashboard-mockup--finance .mockup-chart::before{background:linear-gradient(to top right,transparent 0 22%,var(--color-primary-blue) 23% 27%,transparent 28% 45%,var(--color-highlight) 46% 50%,transparent 51% 66%,var(--color-accent) 67% 71%,transparent 72%)}

.case-page-hero{padding-top:52px}
.case-breadcrumb{display:inline-flex;min-height:44px;align-items:center;gap:8px;margin-bottom:28px;color:var(--petrol-dark);font-size:.85rem;font-weight:800}
.case-breadcrumb:hover{text-decoration:underline}
.case-hero-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);align-items:center;gap:52px}
.case-hero-copy h1{margin:10px 0 20px;font-size:clamp(2.5rem,4.6vw,4rem)}
.case-context{margin:18px 0 0;color:var(--color-primary-blue);font-size:.82rem;font-weight:850}
.case-privacy-note{margin-top:24px;padding:12px 15px;border-left:3px solid var(--color-highlight);background:rgba(255,255,255,.58);color:var(--text-secondary);font-size:.78rem}
.case-hero-media,.case-secondary-media{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--color-surface-soft);box-shadow:var(--shadow)}
.case-hero-media{aspect-ratio:16/9}
.case-hero-media>img,.case-secondary-media>img{width:100%;height:100%;object-fit:contain}
.case-hero-media>.dashboard-mockup{min-height:100%}
.case-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.case-detail-card{min-width:0;padding:26px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 8px 24px rgba(38,93,98,.06)}
.case-detail-card h2{margin-bottom:12px;font-size:1.05rem}
.case-detail-card p{color:var(--text-secondary);font-size:.82rem}
.case-secondary-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:48px}
.case-secondary-media{aspect-ratio:16/9}
.case-secondary-copy h2{margin-bottom:16px}
.case-secondary-copy>p:not(.eyebrow){color:var(--text-secondary)}
.platform-demo-types{display:grid;gap:14px}
.platform-demo-type{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 8px 24px rgba(38,93,98,.06)}
.platform-demo-type h2{margin-bottom:8px;font-size:1.05rem}
.platform-demo-type p{margin:0;color:var(--text-secondary);font-size:.82rem}
.platform-shot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.platform-shot-card{min-width:0;overflow:hidden;box-shadow:0 8px 24px rgba(38,93,98,.06)}
.platform-shot-copy{padding:18px 20px 20px}
.platform-shot-copy .case-context{margin:0 0 5px;font-size:.7rem}
.platform-shot-copy h3{margin:0 0 7px;font-size:1.08rem}
.platform-shot-copy>p:last-child{margin:0;color:var(--text-secondary);font-size:.82rem;line-height:1.55}
.case-return{margin-bottom:36px}

/* Verdiepte BI Platform Demo-case */
.platform-case-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);align-items:end;gap:64px}
.platform-case-heading,.platform-case-summary{min-width:0}
.platform-case-heading .case-context{margin-top:16px}
.platform-case-heading h1{margin:9px 0 16px}
.platform-case-heading .lead{max-width:660px;margin:0;font-size:clamp(1.18rem,2vw,1.48rem);line-height:1.55}
.platform-case-summary>p{margin-bottom:13px;color:var(--text-secondary);font-size:.94rem;line-height:1.7}
.platform-overview-section{padding-top:48px}
.platform-overview-figure{margin:0;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}
.platform-overview-figure img{width:100%;height:auto}
.platform-reading-width{max-width:900px}
.platform-reading-width>h2{max-width:760px;margin-bottom:18px}
.platform-reading-width>p:not(.eyebrow){color:var(--text-secondary);line-height:1.75}
.platform-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none}
.platform-process li{position:relative;min-width:0;padding-right:28px}
.platform-process li:not(:last-child)::after{content:"";position:absolute;top:17px;right:10px;width:calc(100% - 54px);height:1px;transform:translateX(50%);background:var(--color-accent-medium)}
.platform-process li>span{position:relative;z-index:1;width:34px;height:34px;display:grid;place-items:center;margin-bottom:16px;border:1px solid var(--color-accent);border-radius:50%;background:var(--surface);color:var(--petrol-dark);font-size:.7rem;font-weight:900}
.platform-process h3{margin:0 0 7px;font-size:.95rem}
.platform-process p{margin:0;color:var(--text-secondary);font-size:.78rem;line-height:1.55}
.platform-process--summary{margin-top:32px}
.platform-shot-media{aspect-ratio:16/8;display:grid;place-items:center;align-content:center;gap:8px;border-bottom:1px solid var(--border);background:var(--color-surface-soft);color:var(--color-primary-blue)}
.platform-shot-media svg{width:42px;fill:none;stroke:currentColor;stroke-width:1.8}
.platform-shot-media span{font-size:.68rem;font-weight:800;letter-spacing:.03em}
.platform-case-page .platform-demo-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.platform-case-page .platform-demo-type{padding:22px 24px}
.platform-case-page .platform-demo-type h3{margin:0 0 8px;font-size:1rem}
.platform-case-page .platform-demo-type ul{margin:0;padding-left:19px;color:var(--text-secondary);font-size:.8rem;line-height:1.6}
.platform-case-page .platform-demo-type li+li{margin-top:4px}
.platform-case-page .featured-cases-intro .featured-cases-lead+.featured-cases-lead{margin-top:11px}
.platform-demo-note{margin:16px 0 0;padding:13px 16px;border-left:3px solid var(--color-accent);background:var(--color-surface-soft);color:var(--text-secondary);font-size:.76rem;line-height:1.55}
.platform-result-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);align-items:center;gap:56px}
.platform-result-layout h2{margin:0;font-size:clamp(1.8rem,3vw,2.4rem)}
.platform-result-layout>p{margin:0;color:var(--text-secondary);line-height:1.75}
.platform-result-layout--compact{grid-template-columns:minmax(150px,.35fr) minmax(0,1.65fr);gap:34px}
.platform-result-layout--compact h2{font-size:1.55rem}
.platform-result-layout--compact>p{font-size:.9rem;line-height:1.65}
.platform-related-case{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:25px 28px;border-left:4px solid var(--color-accent)}
.platform-related-case .case-context{margin:0 0 7px}
.platform-related-case h2{margin:0 0 7px;font-size:1.35rem}
.platform-related-case p{max-width:760px;margin:0;color:var(--text-secondary);font-size:.84rem;line-height:1.6}
.platform-related-case .btn{flex:none}

/* Compacte BI Platform Demo-case */
.platform-case-redesign{padding:34px 0 46px}
.platform-case-redesign .case-breadcrumb{margin-bottom:20px}
.platform-case-study{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 18px 46px rgba(38,93,98,.09)}
.platform-case-study__hero{padding:38px 44px}
.platform-case-study__meta{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px;color:var(--color-primary-blue);font-size:.82rem}
.platform-case-study__hero h1{margin:0 0 13px;font-size:clamp(2.5rem,4.5vw,4rem);line-height:1.04}
.platform-case-study__summary{max-width:850px;margin-top:18px}
.platform-case-study__summary p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.65}
.platform-case-study__summary p+p{margin-top:14px;color:var(--text-primary)}
.platform-case-study__summary .platform-case-study__disclaimer{display:flex;align-items:flex-start;gap:8px;margin-top:16px;color:var(--text-secondary);font-size:.72rem;line-height:1.55}
.platform-case-study__disclaimer>span{width:18px;height:18px;display:grid;flex:0 0 18px;place-items:center;margin-top:1px;border:1px solid var(--color-accent-medium);border-radius:50%;color:var(--color-primary-blue);font-size:.62rem;font-weight:850}
.platform-case-study__section{padding:32px 40px;border-top:1px solid var(--border)}
.platform-case-study__section h2{margin:0;color:var(--petrol-dark);font-size:1.12rem;line-height:1.4}
.platform-case-study__section h2>span{margin-right:6px;color:var(--color-primary-blue)}
.platform-case-study__concept,.platform-case-study__domains{display:grid;grid-template-columns:185px minmax(0,1fr);align-items:start;gap:28px}
.platform-case-study__section-copy>p{margin:12px 0 0;color:var(--text-secondary);font-size:.82rem;line-height:1.7}
.platform-case-study__overview{margin:0;overflow:hidden;border:1px solid var(--border);border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(38,93,98,.06)}
.platform-case-study__overview img{width:100%;height:auto;display:block}
.platform-case-animation-trigger,.platform-case-overview-trigger{position:relative;min-width:0;width:100%;display:block;padding:0;border:0;border-radius:14px;background:transparent;color:inherit;text-align:inherit;cursor:zoom-in}
.platform-case-animation-trigger:focus-visible,.platform-case-overview-trigger:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
.platform-case-animation-trigger::after,.platform-case-overview-trigger::after{content:"Vergroot";position:absolute;z-index:5;right:12px;bottom:12px;padding:5px 8px;border:1px solid var(--border);border-radius:99px;background:rgba(255,255,255,.94);color:var(--petrol-dark);font-size:.62rem;font-weight:850;box-shadow:0 4px 12px rgba(38,93,98,.1)}
.platform-case-animation-trigger .bi-card-preview{pointer-events:none}
.platform-case-overview-trigger{border-radius:0}
.platform-case-animation-trigger:hover::after,.platform-case-overview-trigger:hover::after{border-color:var(--color-accent-medium);background:var(--teal-soft)}
.bi-card-preview--case{height:auto;min-height:300px;grid-template-rows:minmax(0,1fr);border:1px solid var(--border);border-radius:14px;background-color:#fbfdfd;box-shadow:0 7px 20px rgba(38,93,98,.05)}
.bi-card-preview--case .bi-card-preview__area{padding:20px}
.bi-card-preview--case .bi-card-preview__grid{grid-template-columns:minmax(165px,1fr) minmax(190px,1.08fr) minmax(175px,1fr);gap:8%}
.bi-card-preview--case .bi-card-preview__column{gap:8px}
.bi-card-preview--case .bi-card-preview__node{min-height:52px;padding:7px 9px}
.bi-card-preview--case .bi-card-preview__label strong{font-size:.68rem}
.bi-card-preview--case .bi-card-preview__label small{font-size:.46rem}
.bi-card-preview--case .bi-card-preview__platform{min-height:142px}
.bi-card-preview--case .bi-card-preview__outputs{display:grid;grid-auto-rows:64px;align-content:center;gap:16px}
.bi-card-preview--case .bi-card-preview__outputs .bi-card-preview__node{height:64px}
.platform-case-study__dashboards>h2{margin-bottom:22px}
.platform-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.platform-dashboard-card{min-width:0;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text-primary);font:inherit;text-align:left;box-shadow:0 7px 20px rgba(38,93,98,.06);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.platform-dashboard-card:hover{transform:translateY(-3px);border-color:var(--color-accent-medium);box-shadow:0 12px 25px rgba(38,93,98,.12)}
.platform-dashboard-card:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
.platform-dashboard-card__placeholder{aspect-ratio:16/9;display:grid;place-items:center;align-content:center;gap:8px;border-bottom:1px solid var(--border);background:linear-gradient(145deg,var(--color-surface-soft),#fff);color:var(--color-primary-blue)}
.platform-dashboard-card__placeholder svg{width:38px;fill:none;stroke:currentColor;stroke-width:1.7}
.platform-dashboard-card__placeholder>span{font-size:.66rem;font-weight:800}
.platform-dashboard-card__copy{display:block;padding:15px 16px 17px}
.platform-dashboard-card__copy strong,.platform-dashboard-card__copy>span{display:block}
.platform-dashboard-card__copy strong{margin-bottom:6px;color:var(--petrol-dark);font-size:.88rem}
.platform-dashboard-card__copy>span{color:var(--text-secondary);font-size:.7rem;line-height:1.55}
.platform-case-study__result>h2{margin-bottom:22px}
.platform-case-study__result-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.75fr);align-items:center;gap:32px}
.platform-case-study__result-grid p{margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.65}
.platform-case-study__result-grid .platform-case-study__result-lead{color:var(--text-primary);font-size:.9rem;font-weight:800}
.platform-case-study__feedback{margin:0;padding:20px 22px;border-radius:12px;background:var(--color-surface-soft)}
.platform-case-study__feedback h3{margin:0 0 8px;color:var(--petrol-dark);font-size:.82rem;letter-spacing:0}
.platform-case-study__feedback p{color:var(--petrol-dark)}
.dashboard-lightbox{width:min(1180px,calc(100vw - 48px));max-width:none;height:min(84vh,780px);height:min(84dvh,780px);max-height:none;margin:auto;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 28px 80px rgba(20,67,75,.3)}
.dashboard-lightbox::backdrop{background:rgba(18,49,54,.7);backdrop-filter:blur(3px)}
.dashboard-lightbox__shell{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}
.dashboard-lightbox__shell>header{display:flex;min-height:62px;align-items:center;justify-content:space-between;gap:20px;padding:9px 12px 9px 22px;border-bottom:1px solid var(--border)}
.dashboard-lightbox__shell>header h2{margin:0;font-size:1.05rem}
.dashboard-lightbox__shell>header button{width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:var(--teal-soft);color:var(--petrol-dark);cursor:pointer}
.dashboard-lightbox__shell>header button:hover{background:var(--color-accent-light)}
.dashboard-lightbox__shell>header button:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}
.dashboard-lightbox__shell>header svg{width:21px;fill:none;stroke:currentColor;stroke-width:2}
.dashboard-lightbox__body{min-height:0;display:grid;place-items:center;padding:24px;overflow:auto;background:var(--color-background)}
.dashboard-lightbox__body>img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:var(--shadow)}
.dashboard-lightbox__animation{width:min(1060px,100%);height:100%;min-height:460px}
.dashboard-lightbox__animation[hidden]{display:none}
.dashboard-lightbox__animation>.bi-card-preview{height:100%;min-height:100%;border-radius:14px}
.dashboard-lightbox__placeholder{width:min(820px,100%);min-height:420px;display:grid;place-items:center;align-content:center;gap:14px;border:2px dashed var(--color-accent-medium);border-radius:14px;background:var(--surface);color:var(--color-primary-blue);text-align:center}
.dashboard-lightbox__placeholder[hidden]{display:none}
.dashboard-lightbox__placeholder svg{width:64px;fill:none;stroke:currentColor;stroke-width:1.6}
.dashboard-lightbox__placeholder p{margin:0;color:var(--text-secondary);font-size:.9rem}

/* Uitgelichte cases als modal, met de losse casepagina's als toegankelijke fallback */
body.case-modal-open{overflow:hidden}
.case-modal{width:min(1120px,calc(100vw - 32px));max-width:none;height:min(88vh,900px);height:min(88dvh,900px);max-height:none;margin:auto;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);color:var(--text-primary);box-shadow:0 24px 70px rgba(20,67,75,.24)}
.case-modal::backdrop{background:rgba(18,49,54,.62);backdrop-filter:blur(3px)}
.case-modal__shell{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}
.case-modal__header{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:20px;padding:10px 14px 10px 24px;border-bottom:1px solid var(--border);background:var(--surface)}
.case-modal__header h2{margin:0;font-size:1.08rem}
.case-modal__close{width:44px;height:44px;display:grid;flex:none;place-items:center;padding:0;border:0;border-radius:50%;background:var(--teal-soft);color:var(--petrol-dark);cursor:pointer}
.case-modal__close:hover{background:var(--color-accent-light)}
.case-modal__close:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}
.case-modal__close svg{width:22px;height:22px}
.case-modal__frame{width:100%;height:100%;border:0;background:var(--color-background)}

.case-embed .site-header,.case-embed .site-footer,.case-embed .case-breadcrumb,.case-embed .case-return{display:none}
.case-embed body{background:var(--color-background)}
.case-embed .case-page-hero{padding:34px 0}
.case-embed .section{padding:48px 0}

@media(min-width:1025px){
  .case-modal{width:min(1500px,calc(100vw - 64px));height:min(92vh,1000px);height:min(92dvh,1000px);border-radius:16px}
}
@media(max-width:1024px){
  .experience-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portfolio-other-projects .compact-projects{grid-template-columns:repeat(2,minmax(0,1fr))}
  .case-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .platform-case-intro{gap:38px}
  .platform-case-study__hero{padding:32px}
  .platform-case-study__section{padding:28px 30px}
  .platform-case-study__concept,.platform-case-study__domains{grid-template-columns:165px minmax(0,1fr);gap:22px}
  .platform-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .platform-case-study__result-grid{gap:24px}
}
@media(max-width:820px){
  .portfolio-page .section{padding:54px 0}
  .portfolio-intro{padding:50px 0 42px}
  .case-hero-grid,.case-secondary-layout{grid-template-columns:1fr}
  .case-hero-media{width:100%;max-width:720px}
  .platform-case-intro,.platform-result-layout{grid-template-columns:1fr;gap:28px}
  .platform-process{grid-template-columns:1fr;gap:18px}
  .platform-process li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:0}
  .platform-process li:not(:last-child)::after{top:35px;right:auto;bottom:-20px;left:17px;width:1px;height:auto;transform:none}
  .platform-process li>span{grid-column:1;margin:0}
  .platform-process li>div{grid-column:2}
  .platform-case-study__concept,.platform-case-study__domains{grid-template-columns:1fr}
  .platform-case-study__section-copy>p{max-width:620px}
}
@media(max-width:700px){
  .experience-grid-compact,.featured-cases-grid,.portfolio-testimonials,.platform-shot-grid{grid-template-columns:1fr}
  .platform-case-page .platform-demo-types{grid-template-columns:1fr}
  .platform-flow--case{gap:42px;padding:22px}
  .platform-flow--case .platform-flow__sources{grid-template-columns:repeat(2,minmax(0,1fr))}
  .platform-flow--case .platform-flow__outputs{grid-template-columns:1fr}
  .platform-related-case{align-items:flex-start;flex-direction:column;gap:20px}
}
@media(max-width:560px){
  .portfolio-page .section{padding:46px 0}
  .portfolio-intro{padding:42px 0 36px}
  .experience-card-compact{padding:19px}
  .portfolio-other-projects,.portfolio-experience,.portfolio-recommendation{padding:52px 0}
  .portfolio-other-projects .compact-projects{grid-template-columns:1fr}
  .featured-case-content{padding:17px 18px 18px}
  .portfolio-testimonial{padding:22px}
  .portfolio-cta{padding:23px 21px}
  .platform-demo-type{padding:20px}
  .case-modal{width:calc(100vw - 16px);height:calc(100vh - 16px);height:calc(100dvh - 16px);border-radius:13px}
  .case-modal__header{min-height:58px;padding:7px 8px 7px 17px}
  .case-modal__header h2{font-size:1rem}
  .case-embed .case-page-hero{padding:26px 0}
  .case-embed .section{padding:38px 0}
  .platform-case-heading .badge{margin-bottom:2px}
  .platform-case-heading h1{font-size:clamp(2.25rem,11vw,2.65rem);overflow-wrap:anywhere}
  .platform-overview-section{padding-top:34px}
  .platform-overview-figure{border-radius:12px}
  .platform-flow--case .platform-flow__sources{grid-template-columns:1fr 1fr}
  .platform-related-case{padding:22px 20px}
  .platform-related-case .btn{width:100%}
  .platform-case-redesign{padding:24px 0 34px}
  .platform-case-study{border-radius:13px}
  .platform-case-study__hero,.platform-case-study__section{padding:23px 20px}
  .platform-case-study__hero h1{font-size:clamp(2.15rem,11vw,2.75rem)}
  .platform-case-study__meta{font-size:.72rem}
  .bi-card-preview--case{min-height:245px}
  .bi-card-preview--case .bi-card-preview__area{padding:10px 8px}
  .bi-card-preview--case .bi-card-preview__grid{grid-template-columns:minmax(0,1fr) minmax(76px,.8fr) minmax(0,1fr);gap:9%}
  .bi-card-preview--case .bi-card-preview__sources{align-items:flex-end}
  .bi-card-preview--case .bi-card-preview__outputs{justify-items:flex-start}
  .bi-card-preview--case .bi-card-preview__node{min-height:36px;padding:4px}
  .bi-card-preview--case .bi-card-preview__sources .bi-card-preview__node,.bi-card-preview--case .bi-card-preview__outputs .bi-card-preview__node{width:min(106px,100%)}
  .bi-card-preview--case .bi-card-preview__label strong{font-size:.46rem}
  .bi-card-preview--case .bi-card-preview__label small{display:none}
  .bi-card-preview--case .bi-card-preview__platform{min-height:86px}
  .bi-card-preview--case .bi-card-preview__outputs{grid-auto-rows:42px;gap:6px}
  .bi-card-preview--case .bi-card-preview__outputs .bi-card-preview__node{height:42px}
  .platform-dashboard-grid{grid-template-columns:1fr}
  .platform-dashboard-card__copy{padding:14px 15px 16px}
  .platform-case-study__result-grid{grid-template-columns:1fr;justify-items:start}
  .platform-case-study__feedback{padding:18px;width:100%}
  .dashboard-lightbox{width:calc(100vw - 16px);height:calc(100vh - 16px);height:calc(100dvh - 16px);border-radius:13px}
  .dashboard-lightbox__body{padding:14px}
  .dashboard-lightbox__animation{min-height:420px}
  .dashboard-lightbox__placeholder{min-height:300px;padding:20px}
}
@media(max-width:430px){
  .bi-card-preview--case{min-height:320px}
  .bi-card-preview--case .bi-card-preview__area{padding:11px}
  .bi-card-preview--case .bi-card-preview__grid{grid-template-columns:1fr;grid-template-rows:auto auto auto;align-content:center;gap:30px}
  .bi-card-preview--case .bi-card-preview__sources{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:5px}
  .bi-card-preview--case .bi-card-preview__sources .bi-card-preview__node{flex-direction:column;justify-content:center;gap:2px;padding:3px 2px;text-align:center}
  .bi-card-preview--case .bi-card-preview__sources .bi-card-preview__icon{width:17px;height:17px;flex-basis:17px}
  .bi-card-preview--case .bi-card-preview__sources .bi-card-preview__icon svg{width:11px;height:11px}
  .bi-card-preview--case .bi-card-preview__sources .bi-card-preview__label strong{font-size:.39rem;line-height:1.15}
  .bi-card-preview--case .bi-card-preview__platform-wrap{width:min(140px,52%);justify-self:center}
  .bi-card-preview--case .bi-card-preview__platform{min-height:86px}
  .bi-card-preview--case .bi-card-preview__outputs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:48px;justify-items:stretch;gap:8px}
  .bi-card-preview--case .bi-card-preview__sources .bi-card-preview__node,.bi-card-preview--case .bi-card-preview__outputs .bi-card-preview__node{width:100%;height:100%;min-height:0}
}
@media(max-width:380px){
  .dashboard-mockup{min-height:190px}
}
@media(prefers-reduced-motion:reduce){
  .featured-case-card,.featured-case-arrow{transition:none}
  .featured-case-card:hover{transform:none}
  .featured-case-card:hover .featured-case-arrow{transform:none}
  .platform-flow__particle{display:none}
  .bi-card-preview__particle{display:none}
  .bi-card-preview__node,.bi-card-preview__platform{transition:none}
}
