/* WP137b AJDN creative image system: banner / duo / collage / strip. Dark theme, house colours, no CLS. */
:root{--ajdn-m-lime:var(--eco-lime,#c6f36f);--ajdn-m-cyan:var(--eco-cyan,#22d3ee);--ajdn-m-ink:var(--eco-ink,#07111c);--ajdn-m-r:26px}
body{overflow-x:clip}
.ajdn-m{position:relative;margin:48px 0;padding:0;isolation:isolate}
.ajdn-m-item{display:block;position:relative}
.ajdn-m-img{display:block;width:100%;height:100%;object-fit:cover;background:#0f1d2b}
.ajdn-m figcaption{margin-top:14px;font-size:.8rem;color:#9fb0c4;letter-spacing:.02em}
.ajdn-m figcaption::before{content:'';display:inline-block;width:26px;height:2px;margin:0 10px 4px 0;background:var(--ajdn-m-lime);vertical-align:middle}
/* banner: wide, breaks out of the column to the left, diagonal bottom edge, lime accent bar */
.ajdn-m-banner{margin-left:calc(-1 * min(7vw,110px))}
.ajdn-m-banner .ajdn-m-item{aspect-ratio:16/7;clip-path:polygon(0 0,100% 0,100% 84%,0 100%);border-radius:var(--ajdn-m-r) var(--ajdn-m-r) 0 0;overflow:hidden}
.ajdn-m-banner::after{content:'';position:absolute;left:min(7vw,110px);bottom:-10px;width:34%;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--ajdn-m-lime),var(--ajdn-m-cyan));z-index:2}
/* duo: large photo with a detail photo overlapping the corner outside the frame */
.ajdn-m-duo{padding:0 8% 11% 0}
.ajdn-m-duo .ajdn-m-item-1{aspect-ratio:16/10;border-radius:var(--ajdn-m-r) var(--ajdn-m-r) var(--ajdn-m-r) 6px;overflow:hidden;box-shadow:18px 18px 0 -4px rgba(34,211,238,.18)}
.ajdn-m-duo .ajdn-m-item-2{position:absolute;right:0;bottom:0;width:38%;aspect-ratio:1;border-radius:50% 50% 22px 50%;overflow:hidden;border:6px solid var(--ajdn-m-ink);outline:2px solid var(--ajdn-m-lime);outline-offset:-1px;box-shadow:0 20px 40px rgba(0,0,0,.45);z-index:2}
.ajdn-m-duo .ajdn-m-item-3{display:none}
.ajdn-m-duo figcaption{position:absolute;left:0;bottom:0;max-width:54%}
/* collage: staggered, three sizes, overlapping */
.ajdn-m-collage{display:grid;grid-template-columns:repeat(12,1fr);align-items:start;padding-bottom:4%}
.ajdn-m-collage .ajdn-m-item-1{grid-column:1/8;grid-row:1/3;aspect-ratio:4/5;border-radius:var(--ajdn-m-r);overflow:hidden;clip-path:polygon(0 0,100% 4%,100% 100%,0 96%)}
.ajdn-m-collage .ajdn-m-item-2{grid-column:8/13;grid-row:1;margin:18% 0 0 -8%;aspect-ratio:1;border-radius:999px 999px var(--ajdn-m-r) var(--ajdn-m-r);overflow:hidden;border:2px solid var(--ajdn-m-cyan);z-index:2}
.ajdn-m-collage .ajdn-m-item-3{grid-column:7/12;grid-row:2;margin:-6% 0 0 0;aspect-ratio:4/3;border-radius:14px;overflow:hidden;border:6px solid var(--ajdn-m-ink);box-shadow:-14px 14px 0 -2px var(--ajdn-m-lime);z-index:3}
.ajdn-m-collage .ajdn-m-item:nth-child(n+4){display:none}
.ajdn-m-collage figcaption{grid-column:1/-1}
/* strip: photo strip that breaks through the column on both sides, alternating tilt and size */
.ajdn-m-strip{display:flex;gap:16px;align-items:center;margin-inline:calc(-1 * min(6vw,90px))}
.ajdn-m-strip .ajdn-m-item{flex:1 1 0;min-width:0;aspect-ratio:3/4;border-radius:18px;overflow:hidden;box-shadow:0 18px 30px rgba(0,0,0,.35)}
.ajdn-m-strip .ajdn-m-item:nth-child(odd){transform:rotate(-2deg);aspect-ratio:4/5}
.ajdn-m-strip .ajdn-m-item:nth-child(even){transform:translateY(22px) rotate(1.5deg);border:2px solid var(--ajdn-m-lime)}
.ajdn-m-strip .ajdn-m-item:nth-child(3n){aspect-ratio:1;border-color:var(--ajdn-m-cyan)}
.ajdn-m-strip figcaption{position:absolute;left:min(6vw,90px);bottom:-44px}
/* modifiers */
.ajdn-m--tilt .ajdn-m-item-1{clip-path:polygon(4% 0,100% 0,96% 100%,0 100%);border-radius:0}
.ajdn-m--edge{margin-top:-90px;z-index:3}
/* home hero: duo inside the brand panel, detail breaks out of the panel */
.eco-brand-panel.eco-brand-panel-photo{overflow:visible;background:transparent;border:0;padding:0}
.eco-brand-panel-photo .ajdn-m-duo{margin:0 0 6px}
.eco-brand-panel-photo .ajdn-m-duo .ajdn-m-item-1{aspect-ratio:4/3}
.eco-brand-panel-photo .ajdn-m-duo .ajdn-m-item-2{right:-6%;width:40%}
.eco-brand-panel-photo>p{text-align:left}
.eco-brand-panel-photo .eco-brand-services{justify-content:flex-start}
@media(max-width:1079px){.ajdn-m-banner,.ajdn-m-strip{margin-inline:0}.ajdn-m-banner::after{left:0}}
@media(max-width:767px){
.ajdn-m{margin:34px 0}
.ajdn-m-banner .ajdn-m-item{aspect-ratio:4/3;clip-path:polygon(0 0,100% 0,100% 90%,0 100%)}
.ajdn-m-duo{padding:0 5% 16% 0}.ajdn-m-duo .ajdn-m-item-2{width:44%}.ajdn-m-duo figcaption{position:static;max-width:none}
.eco-brand-panel-photo .ajdn-m-duo .ajdn-m-item-2{right:0}
.ajdn-m-collage .ajdn-m-item-1{grid-column:1/-1;grid-row:1;aspect-ratio:4/3}
.ajdn-m-collage .ajdn-m-item-2{grid-column:1/7;grid-row:2;margin:-12% 0 0 6%}
.ajdn-m-collage .ajdn-m-item-3{grid-column:7/13;grid-row:2;margin:6% 0 0 -4%}
.ajdn-m-strip{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ajdn-m-strip .ajdn-m-item:nth-child(n){transform:none;aspect-ratio:1}
.ajdn-m-strip .ajdn-m-item:nth-child(n+5){display:none}
.ajdn-m-strip figcaption{position:static;grid-column:1/-1}
.ajdn-m--edge{margin-top:-40px}}
@media(prefers-reduced-motion:no-preference){.ajdn-m-img{transition:transform .5s ease}.ajdn-m-item:hover .ajdn-m-img{transform:scale(1.04)}}
/* WP137c light surfaces: alternate dark and white sections. Use .eco-light (white) or .eco-light.eco-light-alt (very light blue-grey).
   Contrast (WCAG AA): body text #334155 on #fff 10.3:1, accent text #3d6b0f on #fff 6.5:1, links #0a5c68 on #fff 7.6:1. */
.ajdn-ecosystem .eco-light,.eco-light{background:#fff;color:#07111f;--eco-border:#d5dde7;--eco-panel:#f3f6fa;--ajdn-m-ink:#fff;--ajdn-m-lime:#7cc22e;border-color:#d5dde7}
.ajdn-ecosystem .eco-light.eco-light-alt,.eco-light.eco-light-alt{background:#eef3f8;--eco-panel:#fff}
.eco-light :is(h1,h2,h3,h4,strong,summary,dt){color:#07111f}
.eco-light :is(p,li,dd,td,th,figcaption,.eco-intro),.ajdn-ecosystem .eco-light .eco-detail-content :is(p,li),.ajdn-ecosystem .eco-light .eco-detail-list,.eco-light .eco-route p,.eco-light .eco-home-facts-list{color:#334155}
.eco-light .eco-home-facts-list strong{color:#07111f}
.eco-light :is(.eco-kicker,.eco-route-index,.eco-route-arrow),.ajdn-ecosystem .eco-light .eco-techniques>.eco-kicker,.eco-light .eco-journey li::before,.eco-light.eco-journey li::before{color:#3d6b0f}
.eco-light.eco-journey li,.eco-light .eco-journey li{border-top-color:#7cc22e}
.eco-light.eco-journey li::after{background:#7cc22e}
.eco-light a:not(.eco-button):not(.eco-route):not(.eco-home-card):not([class*="card"]){color:#0a5c68;text-decoration:underline;text-underline-offset:3px}
.eco-light :is(.eco-route,.eco-home-card,[class*="card"]){color:#07111f;background:var(--eco-panel);border-color:#d5dde7}
.eco-light :is(.eco-route,.eco-home-card):hover{border-color:#3d6b0f}
.eco-light .eco-button{background:#07111f;color:#fff!important}
.eco-light .eco-button:hover{background:#1c2b3f}
.ajdn-ecosystem .eco-light .eco-detail-content details{border-bottom-color:#d5dde7}
.ajdn-ecosystem .eco-light .eco-detail-content table{border-color:#d5dde7}
.ajdn-ecosystem .eco-light .eco-detail-content :is(th,td){border-color:#d5dde7}
.ajdn-ecosystem .eco-light .eco-detail-content :is(.eco-feature-card,.eco-technique-card){background:#f3f6fa;border-color:#d5dde7}
.ajdn-ecosystem .eco-light .eco-detail-content :is(.eco-feature-card,.eco-technique-card) :is(h3,p){color:#07111f}
.ajdn-ecosystem .eco-light .eco-page-toc{background:#f3f6fa;border-color:#d5dde7}
.ajdn-ecosystem .eco-light .eco-page-toc summary{color:#07111f}.ajdn-ecosystem .eco-light .eco-page-toc a{color:#0a5c68}
.eco-light .ajdn-m figcaption{color:#475569}
.eco-light .ajdn-m-img{background:#e2e8f0}
/* dark cards (aside) keep their own dark palette on a light section */
.ajdn-ecosystem .eco-light .eco-detail-aside :is(p,li,span){color:#d4dfeb}.ajdn-ecosystem .eco-light .eco-detail-aside :is(h2,h3,strong){color:#f1f5fb}.ajdn-ecosystem .eco-light .eco-detail-aside a{color:#c5f277;text-decoration:none}
.ajdn-ecosystem .eco-light .eco-technique-card>span,.eco-light .eco-route-arrow{color:#3d6b0f}
/* WP138 header: sticky on every width, CTA always visible */
.ajdn-ecosystem .eco-header{position:sticky;top:0;z-index:60}
.eco-header-cta{display:none;align-items:center;background:var(--eco-lime,#b9f56a);color:#07111f!important;border-radius:999px;padding:9px 14px;font-weight:750;font-size:.78rem;line-height:1.2;white-space:nowrap;text-decoration:none}
@media(max-width:1079px){.eco-header-cta{display:inline-flex}.ajdn-ecosystem .eco-navigation.is-open{max-height:calc(100svh - 150px);overflow-y:auto}}
@media(max-width:767px){.ajdn-ecosystem .eco-header{top:calc(-1 * var(--eco-utility-h,119px))}.eco-header-cta{padding:8px 11px;font-size:.7rem}.ajdn-ecosystem section{scroll-margin-top:110px}}
/* WP138 homepage v2 */
.hv2-promise{font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:650;line-height:1.45;color:#e6eef8;margin-top:22px!important;max-width:30ch}
.hv2-hero{padding-bottom:70px}
.hv2-img{display:block;position:relative;overflow:hidden;background:#0f1d2b}
.hv2-img img{display:block;width:100%;height:100%;object-fit:cover}
.hv2-img--slant{aspect-ratio:16/10;clip-path:polygon(0 0,100% 0,100% 86%,0 100%);border-radius:22px 22px 0 0}
.hv2-img--slant-r{aspect-ratio:16/10;clip-path:polygon(0 0,100% 0,100% 100%,0 86%);border-radius:22px 22px 0 0}
.hv2-img--arch{aspect-ratio:4/5;border-radius:999px 999px 22px 22px;border:2px solid var(--eco-lime,#b9f56a)}
.hv2-img--tilt{aspect-ratio:4/5;clip-path:polygon(6% 0,100% 0,94% 100%,0 100%);box-shadow:none}
.hv2-img--browser{aspect-ratio:16/10;border-radius:14px;border:1px solid #2a3b50;padding-top:26px;background:#0f1d2b linear-gradient(#18293c,#18293c) top/100% 26px no-repeat}
.hv2-img--browser::before{content:'';position:absolute;top:9px;left:12px;width:8px;height:8px;border-radius:50%;background:#ff5f57;box-shadow:14px 0 0 #febc2e,28px 0 0 #28c840}
.hv2-img--browser img{object-position:top}
.eco-light .hv2-img--browser{border-color:#d5dde7;background:#e9eef4 linear-gradient(#dfe6ee,#dfe6ee) top/100% 26px no-repeat;box-shadow:0 24px 40px -18px rgba(7,17,31,.35)}
.hv2-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:38px}
.hv2-route{background:#f3f6fa;border:1px solid #d5dde7;border-radius:24px;overflow:hidden;display:flex;flex-direction:column}
.hv2-route:nth-child(2){margin-top:48px}
.hv2-route-body{padding:26px 28px 30px;display:flex;flex-direction:column;gap:12px;flex:1}
.hv2-route h3{font-size:1.55rem}
.hv2-route ul{list-style:none;padding:0;margin:4px 0 8px;display:flex;flex-wrap:wrap;gap:8px}
.eco-light .hv2-route ul a{display:inline-block;border:1px solid #c3cfdc;border-radius:999px;padding:6px 12px;font-size:.82rem;text-decoration:none;color:#07111f}
.eco-light .hv2-route ul a:hover{border-color:#3d6b0f}
.hv2-route .eco-button{align-self:flex-start;margin-top:auto}
.hv2-pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px;align-items:start}
.hv2-pillar{display:flex;flex-direction:column;gap:10px}
.hv2-pillar:nth-child(2){margin-top:56px}
.hv2-pillar .hv2-img{margin-bottom:14px}
.hv2-pillar h3{font-size:1.45rem}.hv2-pillar p{color:#bfcbdb;font-size:.92rem;line-height:1.7}
.hv2-links{list-style:none;padding:0;margin:4px 0;display:grid;gap:6px;font-size:.88rem}
.hv2-links a{color:#d4dfeb;text-decoration:underline;text-underline-offset:3px}
.hv2-more{color:var(--eco-lime,#b9f56a);font-weight:700;margin-top:6px}
.hv2-fig-list{list-style:none;padding:0;margin:34px 0 0!important;display:grid;grid-template-columns:repeat(6,1fr);gap:0;border-top:3px solid #7cc22e}
.hv2-fig-list li{padding:22px 18px 6px 0;border-right:1px solid #d5dde7;margin-right:18px}
.hv2-fig-list li:last-child{border-right:0}
.hv2-fig-list strong{display:block;font-size:clamp(1.35rem,2.2vw,2rem);letter-spacing:-.03em;line-height:1.1;color:#07111f}
.hv2-fig-list span{display:block;margin-top:8px;font-size:.84rem;color:#334155;line-height:1.5}
.hv2-steps{list-style:none;padding:0;margin:40px 0 0!important;display:grid;grid-template-columns:repeat(4,1fr);gap:26px;counter-reset:s}
.hv2-steps li{counter-increment:s;position:relative;padding:58px 22px 24px;border:1px solid var(--eco-border,#273647);border-radius:20px;background:var(--eco-panel,#0d1b2d)}
.hv2-steps li::before{content:'0' counter(s);position:absolute;top:18px;left:22px;font-weight:800;font-size:.8rem;color:#07111f;background:var(--eco-lime,#b9f56a);border-radius:999px;padding:4px 10px}
.hv2-steps li:nth-child(even){transform:translateY(26px)}
.hv2-steps h3{font-size:1.1rem;margin-bottom:8px}.hv2-steps p{color:#bfcbdb;font-size:.9rem;line-height:1.65}
.hv2-process{padding-bottom:110px}
.hv2-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:38px}
.hv2-case{display:flex;flex-direction:column;gap:10px;text-decoration:none!important;color:#07111f}
.hv2-case:nth-child(2){margin-top:40px}
.hv2-case h3{font-size:1.25rem;line-height:1.3}.hv2-case strong{color:#0a5c68}
.hv2-google .eco-shell{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}.hv2-google p{font-size:1.1rem;color:#e6eef8}
@media(max-width:1079px){.hv2-fig-list{grid-template-columns:repeat(3,1fr);row-gap:10px}.hv2-fig-list li:nth-child(3){border-right:0}.hv2-steps{grid-template-columns:1fr 1fr}.hv2-steps li:nth-child(even){transform:none}}
@media(max-width:767px){.hv2-route-grid,.hv2-pillar-grid,.hv2-case-grid{grid-template-columns:1fr;gap:26px}.hv2-route:nth-child(2),.hv2-pillar:nth-child(2),.hv2-case:nth-child(2){margin-top:0}.hv2-img--arch,.hv2-img--tilt{aspect-ratio:16/11}.hv2-img--arch{border-radius:160px 160px 18px 18px}.hv2-fig-list{grid-template-columns:1fr 1fr}.hv2-fig-list li{border-right:0;margin-right:0;padding-right:10px}.hv2-steps{grid-template-columns:1fr}.hv2-process{padding-bottom:60px}}
/* WP139 service-page pattern */
.sp-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
.sp-hero-media{position:relative;padding:0 0 22px 22px}
.sp-hero-media::before{content:'';position:absolute;left:0;bottom:0;width:62%;height:70%;border-radius:22px;background:linear-gradient(135deg,var(--eco-lime,#b9f56a),var(--eco-cyan,#62d8ff));opacity:.9}
.sp-hero-frame{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:28px 28px 28px 6px;clip-path:polygon(0 0,100% 0,100% 92%,88% 100%,0 100%);background:#0f1d2b}
.sp-hero-frame img{display:block;width:100%;height:100%;object-fit:cover}
.sp-hero-media--browser .sp-hero-frame{aspect-ratio:16/10;clip-path:none;border-radius:14px;border:1px solid #2a3b50;padding-top:26px;background:#18293c}
.sp-hero-media--browser .sp-hero-frame img{object-position:top}
.sp-hero-media--browser .sp-hero-frame::before{content:'';position:absolute;top:9px;left:12px;width:8px;height:8px;border-radius:50%;background:#ff5f57;box-shadow:14px 0 0 #febc2e,28px 0 0 #28c840}
.eco-detail-content>h2#in-beeld,.eco-detail-content>h2#cases-bewijs{margin-top:56px}
.sp-cases{margin:26px 0 40px}.sp-cases .hv2-case:nth-child(2){margin-top:28px}
.sp-form .eco-home-form{max-width:820px}
.eco-light .eco-nlsync-faq h3{margin-top:28px}
@media(max-width:1079px){.sp-hero-grid{gap:34px}}
@media(max-width:767px){.sp-hero-grid{grid-template-columns:1fr}.sp-hero-media{padding:0 0 14px 14px;max-width:520px}.sp-cases{grid-template-columns:1fr}.sp-cases .hv2-case:nth-child(2){margin-top:0}}

/* WP138 fix: expert card in aside transparent on light */
.eco-light .eco-detail-aside .eco-expert-card{background:transparent;box-shadow:none}
.eco-nlsync-legacy details{margin:.35rem 0}
