/*
Theme Name: Datastorms Clean
Theme URI: https://www.datastorms.eu
Author: Datastorms
Description: Schone presentatielaag voor Datastorms. Pagina-inhoud, menu’s en media staan uitsluitend in WordPress.
Version: 2.1.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: datastorms
*/

:root {
  --navy:#102a43;
  --ink:#101828;
  --muted:#53677a;
  --blue:#1fa9e0;
  --blue-dark:#1687b5;
  --purple:#5b43ed;
  --purple-dark:#4931d4;
  --purple-soft:#eeeafd;
  --pale:#edf8fc;
  --line:#d8e5ec;
  --soft:#f6f8fa;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); font-family:Arial,Helvetica,sans-serif; background:#fff; }
body.admin-bar header { top:32px; }
main { display:block; }
.wrap { width:min(1180px,calc(100% - 64px)); margin:0 auto; }
header { position:sticky; top:0; z-index:20; background:rgba(255,255,255,.96); border-bottom:1px solid #edf1f4; }
nav { height:92px; display:flex; align-items:center; gap:38px; }
nav img { width:235px; height:auto; display:block; }
.site-logo { display:block; flex:0 0 auto; }
.site-logo img { width:235px; max-height:62px; object-fit:contain; object-position:left center; }
.site-title { color:var(--navy); font-size:24px; font-weight:800; }
nav .links { margin-left:auto; display:flex; align-items:center; gap:30px; font-size:15px; color:#263b50; }
nav .links ul { display:flex; align-items:center; gap:30px; margin:0; padding:0; list-style:none; }
nav .links li { position:relative; margin:0; padding:0; }
nav .links > ul > li > a { display:flex; align-items:center; min-height:44px; }
nav .links .menu-item-has-children > a:after { content:""; width:7px; height:7px; margin:0 0 4px 8px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); }
nav .links .sub-menu { position:absolute; top:calc(100% - 2px); left:-18px; z-index:30; display:block; min-width:220px; padding:10px; visibility:hidden; opacity:0; transform:translateY(7px); background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 18px 45px rgba(16,42,67,.13); transition:opacity .18s ease,transform .18s ease,visibility .18s; }
nav .links .sub-menu li { display:block; }
nav .links .sub-menu a { display:block; padding:11px 12px; border-radius:9px; white-space:nowrap; }
nav .links .sub-menu a:hover,nav .links .sub-menu a:focus { color:var(--purple); background:var(--purple-soft); }
nav .links li:hover > .sub-menu,nav .links li:focus-within > .sub-menu { visibility:visible; opacity:1; transform:translateY(0); }
.submenu-toggle,.menu-toggle { display:none; }
.nav-active { color:var(--purple); font-weight:700; }
.current-menu-item > a,.current_page_item > a { color:var(--purple); font-weight:700; }
a { color:inherit; text-decoration:none; }
h1, h2, h3, h4, h5, h6 { font-weight: inherit; }
.is-style-ghost > a.wp-element-button { background:transparent; color:var(--navy); padding-left:0; box-shadow:none; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 24px; border-radius:12px; background:var(--blue); color:#fff; font-weight:700; white-space:nowrap; transition:.2s ease; }
.button:hover { transform:translateY(-1px); }
.button.dark { background:var(--navy); }
.button.product { background:linear-gradient(100deg,var(--blue),var(--purple)); box-shadow:0 10px 26px rgba(91,67,237,.15); }
.button.product:hover { background:linear-gradient(100deg,var(--blue-dark),var(--purple-dark)); }
.button.ghost { background:transparent; color:var(--navy); padding-left:0; box-shadow:none; }
.hero { padding:36px 0 12px; }
.hero-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:72px; align-items:center; }
.eyebrow { color:var(--blue-dark); font-size:14px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
h1 { margin:22px 0 28px; max-width:700px; font-size:64px; line-height:1.03; letter-spacing:-.045em; }
.hero-lead { margin:0 0 22px; color:var(--navy); font-size:28px; line-height:1.25; font-weight:700; }
.copy { color:var(--muted); font-size:19px; line-height:1.6; }
.actions { display:flex; gap:26px; align-items:center; margin-top:34px; }
.proof-panel { padding:46px; background:var(--pale); border:1px solid #bfe8f8; border-radius:28px; }
.proof-panel { animation:gentle-float 7s ease-in-out infinite; }
.proof-panel h2 { margin:15px 0 34px; font-size:38px; line-height:1.12; letter-spacing:-.03em; }
.proof { display:grid; grid-template-columns:34px 1fr; gap:16px; margin:24px 0; }
.dot { width:26px; height:26px; margin-top:1px; border-radius:50%; background:var(--blue); }
.dot.purple { background:var(--purple); }
.dot.navy { background:var(--navy); }
.proof strong { display:block; margin-bottom:4px; font-size:18px; }
.proof span { color:var(--muted); line-height:1.45; }
.story-section { padding-top:82px; padding-bottom:82px; border-top:1px solid #edf1f4; }
.logo-proof { padding:48px 0; border-top:1px solid #edf1f4; border-bottom:1px solid #edf1f4; }
.logo-proof .wrap { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:center; }
.logo-proof h2 { font-size:30px; margin:8px 0 10px; }
.logo-proof .copy { font-size:15px; margin:0; }
.text-link { display:inline-block; margin-top:14px; color:var(--navy); font-weight:700; }
.partner-marquee { overflow:hidden; padding:8px 0; mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.partner-track { display:flex; width:max-content; animation:partner-scroll 24s linear infinite; }
.partner-track figure { flex: 0 0 230px; width: 230px; height: 110px; margin: 0; padding: 22px 25px; display: flex; align-items: center; justify-content: center; border: 1px solid #D9E3EA; border-radius: 16px; background: #fff; }
.partner-track img {width: 100%; height: 100%; object-fit: contain;}
.partner-marquee:hover .partner-track { animation-play-state:paused; }
.partner-logo { width:230px; height:110px; margin-right:18px; padding:22px 25px; border:1px solid var(--line); border-radius:16px; background:#fff; display:flex; align-items:center; justify-content:center; }
.partner-logo img { display:block; width:100%; height:100%; object-fit:contain; }
section { padding:96px 0; }
section.soft { background:var(--soft); }
.section-head { max-width:790px; margin-bottom:58px; }
h2 { margin:14px 0 20px; font-size:48px; line-height:1.08; letter-spacing:-.035em; }
h3 { margin:0 0 12px; font-size:23px; line-height:1.2; }
.problem-grid,.story-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.story-grid { align-items:start; }
.story-lead { color:var(--navy); font-size:22px; font-weight:700; margin-top:0; }
.fragmented { padding:44px; border-radius:28px; background:#fff; border:1px solid var(--line); }
.fragmented .row { display:flex; align-items:center; padding:16px 0; border-bottom:1px solid #e8eef2; color:#354b5f; }
.fragmented .row:last-child { border:0; }
.perspectives { display:grid; grid-template-columns:repeat(5,1fr); gap:18px; }
.perspective { min-height:240px; padding:28px 22px; border-top:4px solid var(--blue); background:#fff; box-shadow:0 10px 28px rgba(16,42,67,.07); }
.perspective:nth-child(3) { border-color:var(--purple); }
.perspective span { display:block; margin-top:17px; color:var(--muted); font-size:15px; line-height:1.55; }
.cap-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.capability { min-height:310px; padding:34px; border:1px solid var(--line); border-radius:22px; background:#fff; }
.line-icon { position:relative; display:block; width:42px; height:42px; margin-bottom:18px; border-radius:12px; background:var(--pale); color:var(--blue-dark); }
.line-icon:before,.line-icon:after { content:""; position:absolute; box-sizing:border-box; }
.line-icon.integrate:before { inset:10px; border:2px solid currentColor; border-radius:50%; box-shadow:10px 0 0 -7px var(--pale),10px 0 0 -5px currentColor; }
.line-icon.integrate:after { left:8px; top:20px; width:26px; border-top:2px solid currentColor; transform:rotate(-35deg); }
.line-icon.verify { color:var(--purple); background:var(--purple-soft); }
.line-icon.verify:before { left:11px; top:8px; width:20px; height:24px; border:2px solid currentColor; border-radius:3px; }
.line-icon.verify:after { left:16px; top:15px; width:11px; height:6px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(-45deg); }
.line-icon.automate:before { left:9px; top:12px; width:19px; height:2px; background:currentColor; box-shadow:0 8px 0 currentColor,0 16px 0 currentColor; }
.line-icon.automate:after { right:8px; top:11px; width:8px; height:18px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:skewY(-30deg); }
.line-icon.government:before { left:8px; top:12px; width:26px; height:18px; border:2px solid currentColor; border-top:0; background:linear-gradient(90deg,transparent 22%,currentColor 23% 29%,transparent 30% 46%,currentColor 47% 53%,transparent 54% 70%,currentColor 71% 77%,transparent 78%); }
.line-icon.government:after { left:7px; top:7px; width:28px; height:10px; border-left:14px solid transparent; border-right:14px solid transparent; border-bottom:8px solid currentColor; }
.line-icon.infrastructure:before { left:8px; top:11px; width:26px; height:19px; border:2px solid currentColor; border-radius:50% 50% 35% 35%; }
.line-icon.infrastructure:after { left:5px; bottom:8px; width:32px; height:7px; border-top:2px solid currentColor; border-bottom:2px solid currentColor; }
.line-icon.maritime:before { left:8px; top:18px; width:26px; height:13px; border:2px solid currentColor; border-top:0; border-radius:0 0 14px 14px; transform:skewX(-12deg); }
.line-icon.maritime:after { left:19px; top:7px; width:2px; height:17px; background:currentColor; box-shadow:7px 7px 0 4px var(--pale); border-right:8px solid currentColor; border-top:6px solid transparent; border-bottom:6px solid transparent; }
.line-icon.industry:before { left:8px; bottom:8px; width:26px; height:21px; border:2px solid currentColor; clip-path:polygon(0 35%,34% 0,34% 35%,67% 0,67% 35%,100% 0,100% 100%,0 100%); }
.line-icon.requirements:before,.line-icon.requirements:after { width:9px; height:9px; border:2px solid currentColor; border-radius:2px; }
.line-icon.requirements:before { left:7px; top:7px; }.line-icon.requirements:after { right:7px; bottom:7px; }
.line-icon.requirements { background-image:linear-gradient(135deg,transparent 48%,currentColor 49% 52%,transparent 53%); }
.line-icon.information { color:var(--purple); background:var(--purple-soft); }
.line-icon.information:before,.line-icon.information:after { left:9px; width:24px; height:8px; border:2px solid currentColor; border-radius:2px; }
.line-icon.information:before { top:8px; }.line-icon.information:after { bottom:8px; }
.line-icon.workflow:before { left:8px; top:20px; width:19px; border-top:2px solid currentColor; }
.line-icon.workflow:after { right:8px; top:15px; width:10px; height:10px; border-right:2px solid currentColor; border-top:2px solid currentColor; transform:rotate(45deg); }
.cap-no { color:var(--blue); font-size:16px; font-weight:800; }
.purple-text { color:var(--purple); }
.capability h3 { margin-top:36px; font-size:27px; }
.capability p { color:var(--muted); font-size:17px; line-height:1.55; }
.metric { margin-top:22px; padding-top:20px; border-top:1px solid var(--line); color:var(--navy); font-weight:700; }
.adapt { position:relative; overflow:hidden; padding:82px; color:#fff; background:var(--navy); border-radius:34px; }
.adapt:after { content:""; position:absolute; width:420px; height:420px; right:-140px; top:-180px; border:70px solid rgba(91,67,237,.24); border-radius:50%; }
.adapt .eyebrow { color:#8ddfff; }
.adapt h2 { max-width:850px; font-size:55px; }
.adapt p { max-width:760px; color:#d5e3ed; font-size:20px; line-height:1.6; }
.adapt-points { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:48px; position:relative; z-index:2; }
.adapt-points div { padding-top:18px; border-top:2px solid var(--blue); font-size:17px; line-height:1.45; }
.adapt-points div:nth-child(2) { border-color:var(--purple); }
.filters { display:flex; flex-wrap:wrap; gap:10px; margin:-22px 0 30px; }
.filters button { border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--navy); cursor:pointer; font:inherit; font-size:13px; font-weight:700; padding:11px 15px; }
.filters button:hover,.filters button.active { background:var(--purple); border-color:var(--purple); color:#fff; }
.applications { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.application { padding:28px 26px; min-height:190px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.application p { color:var(--muted); line-height:1.5; margin:0; }
.tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:20px; }
.tags span,.tags b { border-radius:999px; background:var(--purple-soft); color:var(--purple-dark); font-size:11px; font-weight:700; padding:7px 10px; }
.sectors { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.sector { padding:32px; background:var(--pale); border:1px solid transparent; border-radius:20px; transition:.2s ease; }
.sector:hover { border-color:#a8def3; transform:translateY(-2px); }
.sector p { margin:0; color:var(--muted); line-height:1.55; }
.sector .tags b { background:#fff; color:var(--navy); }
.evidence { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; }
.numbers { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.number { padding:28px; background:#fff; border:1px solid var(--line); border-radius:18px; }
.number strong { display:block; color:var(--blue-dark); font-size:35px; margin-bottom:8px; }
.number:nth-child(2) strong { color:var(--purple); }
.number span { color:var(--muted); line-height:1.45; }
.case-placeholder { padding:40px; border:2px dashed #b8cad5; border-radius:22px; background:#fff; }
.case-placeholder h3 { font-size:27px; }
.case-placeholder li { margin:12px 0; color:var(--muted); }
.security { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.security-list { display:grid; gap:16px; }
.security-list div { padding:22px 24px; border-left:4px solid var(--blue); background:#fff; }
.security-list div:nth-child(2) { border-color:var(--purple); }
.course-teaser-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.course-teaser .button { margin-top:12px; }
.course-teaser-cards { display:grid; gap:14px; }
.course-teaser-cards article { display:grid; grid-template-columns:48px 1fr; align-items:center; gap:16px; padding:18px 22px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.course-teaser-cards .line-icon { width:38px; height:38px; margin:0; }
.course-teaser-cards strong { color:var(--navy); font-size:18px; }
.course-teaser-cards small { color:var(--muted); margin-top:4px; }
.partner-teaser { border-top:1px solid #edf1f4; }
.partner-teaser-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.partner-teaser .button.ghost { margin-top:10px; }
.cta { padding:90px 0; text-align:center; background:var(--pale); position:relative; overflow:hidden; }
.cta:after { content:""; position:absolute; width:260px; height:260px; right:-150px; top:-150px; border:40px solid rgba(91,67,237,.11); border-radius:50%; }
.cta h2 { max-width:830px; margin-left:auto; margin-right:auto; }
.cta p { max-width:760px; margin:0 auto 32px; }
footer { padding:52px 0; color:#dce7ef; background:#0a2135; }
.footer-grid { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; }
footer img { width:220px; }
.footer-logo { width:220px; max-height:70px; object-fit:contain; object-position:left top; }
footer p { margin:0; color:#aebfcb; line-height:1.7; }
.editable-page > :where(:not(.alignwide):not(.alignfull)),
.editable-page .ds-section > :where(:not(.alignwide):not(.alignfull)) { width:min(1180px,calc(100% - 64px)); margin-left:auto; margin-right:auto; }
.editable-page > .wp-block-group.ds-section { width:100%; max-width:none; margin:0; padding:36px 0 24px; }
.editable-page > .wp-block-group.ds-section:nth-child(even) { background:var(--soft); }
.editable-page > .wp-block-group.ds-hero { padding:36px 0 24px; background:#fff; }
.editable-page > .wp-block-group.ds-problem { background:var(--soft); }
.editable-page > .wp-block-group.ds-adapt { color:#fff; background:var(--navy); }
.editable-page > .wp-block-group.ds-adapt p { color:#d5e3ed; }
.editable-page > .wp-block-group.ds-cta { text-align:center; background:var(--pale); }
.editable-page h1 { margin-top:22px; }
.editable-page h2 { margin-top:14px; }
.editable-page p { color:var(--muted); font-size:19px; line-height:1.6; }
.editable-page .copy { color:var(--muted); font-size:19px; line-height:1.6; }
.editable-page .ds-lead { color:var(--navy); font-size:28px; font-weight:700; line-height:1.3; }
.editable-page .ds-eyebrow { color:var(--blue-dark); font-size:14px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.editable-page .wp-block-columns { gap:26px; }
.editable-page .wp-block-column { padding:30px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.editable-page ul { color:var(--muted); line-height:1.9; }
.editable-page .wp-block-button__link { border-radius:12px; background:linear-gradient(100deg,var(--blue),var(--purple)); font-weight:700; }
.editable-page > .wp-block-group.ds-page-hero { padding:88px 0 72px; background: var(--pale) }
.editable-page > .wp-block-group.ds-card-grid { width:min(1180px,calc(100% - 64px)); max-width:1180px; margin:0 auto; padding:82px 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; background:#fff; }
.editable-page .ds-card-grid > * { width:auto; margin:0; }
.editable-page .ds-card { position:relative; min-height:220px; padding:30px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.editable-page .ds-card:before { display:flex; align-items:center; justify-content:center; width:42px; height:42px; margin-bottom:22px; border-radius:12px; color:var(--blue-dark); background:var(--pale); font-size:23px; font-weight:400; line-height:1; }
.editable-page .ds-card h3 { margin:0 0 12px; font-size:24px; }
.editable-page .ds-card p { margin-bottom:0; font-size:16px; }
.editable-page .ds-integrate:before,.editable-page .ds-api:before { content:"⇄"; }
.editable-page .ds-verify:before,.editable-page .ds-iso:before { content:"✓"; color:var(--purple); background:var(--purple-soft); }
.editable-page .ds-automate:before,.editable-page .ds-workflow:before { content:"↗"; }
.editable-page .ds-se:before { content:"◇"; }
.editable-page .ds-assets:before { content:"◫"; }
.editable-page .ds-policy:before { content:"⚖"; font-size:20px; }
.editable-page .ds-information:before { content:"≋"; color:var(--purple); background:var(--purple-soft); }
.editable-page .ds-government:before { content:"⌂"; }
.editable-page .ds-infrastructure:before { content:"⌁"; }
.editable-page .ds-maritime:before { content:"≈"; }
.editable-page .ds-industry:before { content:"⌗"; }
.editable-page .ds-partners { grid-template-columns:repeat(3,minmax(0,1fr)); }
.editable-page .ds-partner-card:before { display:none; }
.editable-page .ds-partner-card .wp-block-image { display:flex; align-items:center; justify-content:center; height:120px; margin:0 0 28px; padding:20px; border-radius:14px; background:#fff; }
.editable-page .ds-partner-card .wp-block-image img { width:100%; height:100%; object-fit:contain; }
.editable-page > .wp-block-group.ds-booking { background:var(--pale); }
.editable-page .ds-problem-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:70px; align-items:center; }
.editable-page .ds-problem-grid > .wp-block-column { padding:0; border:0; border-radius:0; background:transparent; }
.editable-page .ds-fragmented {  margin-top:60px;overflow:hidden; padding:12px 34px!important; border:1px solid var(--line)!important; border-radius:24px!important; background:#fff!important; }
.editable-page .ds-problem-item { position:relative; min-height:74px; padding:22px 0 22px 54px; border-bottom:1px solid var(--line); }
.editable-page .ds-problem-item:last-child { border-bottom:0; }
.editable-page .ds-problem-item p { margin:0; color:var(--navy); font-size:16px; line-height:1.45; }
.editable-page .ds-problem-item:before { position:absolute; left:0; top:18px; display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:10px; color:var(--blue-dark); background:var(--pale); font-size:19px; line-height:1; }
.editable-page .ds-definitions:before { content:"≠"; }
.editable-page .ds-files:before { content:"▤"; }
.editable-page .ds-impact:before { content:"↗"; color:var(--purple); background:var(--purple-soft); }
.editable-page .ds-handover:before { content:"⇄"; }
.editable-page .ds-hero-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:72px; align-items:center; }
.editable-page .ds-hero-grid > .wp-block-column { padding:0; border:0; background:transparent; }
.editable-page .ds-proof-panel { margin-top:60px;padding:42px!important; border:1px solid #bfe8f8!important; border-radius:28px!important; background:var(--pale)!important; }
.editable-page .ds-proof-panel h2 { font-size:36px; }
.editable-page .ds-proof-item { position:relative; padding:12px 0 12px 48px; }
.editable-page .ds-proof-item:before { position:absolute; left:0; top:12px; display:flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:10px; color:#fff; background:var(--blue); }
.editable-page .ds-proof-item.ds-integrate:before { content:"⇄"; }
.editable-page .ds-proof-item.ds-verify:before { content:"✓"; background:var(--purple); }
.editable-page .ds-proof-item.ds-automate:before { content:"↗"; background:var(--navy); }
.editable-page .ds-proof-item h3 { margin:0 0 4px; font-size:18px; font-weight: 700; }
.editable-page .ds-proof-item p { margin:0; font-size:14px; }
.editable-page .ds-logo-proof > .wp-block-columns { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:center; }
.editable-page .ds-logo-proof .wp-block-column { padding:0; border:0; background:transparent; }
.editable-page .partner-track { display:flex; width:max-content; gap:18px; animation:partner-scroll 24s linear infinite; }
.editable-page .partner-track .wp-block-image { display:flex; align-items:center; justify-content:center; width:230px; height:110px; margin:0; padding:22px 25px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.editable-page .partner-track img { width:100%; height:100%; object-fit:contain; }
.editable-page .ds-perspectives { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; margin-top:34px; }
.editable-page .ds-perspective { padding:24px 18px; border-top:3px solid var(--blue); border-radius:0 0 14px 14px; background:var(--soft); }
.editable-page .ds-perspective:nth-child(2n) { border-color:var(--purple); }
.editable-page .ds-perspective h3 { margin:0 0 10px; font-size:19px; }
.editable-page .ds-perspective p { margin:0; font-size:14px; }
.editable-page .ds-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.editable-page .ds-home-sectors .ds-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.editable-page .ds-home-courses > .wp-block-columns { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.editable-page .ds-home-courses .wp-block-column { padding:0; border:0; background:transparent; }
.editable-page .ds-training-list { display:grid; gap:14px; }
.editable-page .ds-training-item { position:relative; padding:18px 22px 18px 76px; border:1px solid var(--line); border-left:4px solid var(--blue); border-radius:16px; background:#fff; }
.editable-page .ds-training-item:before { position:absolute; left:20px; top:18px; display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:10px; color:var(--blue-dark); background:var(--pale); }
.editable-page .ds-training-item.ds-se:before { content:"◇"; }
.editable-page .ds-training-item.ds-information:before { content:"≋"; color:var(--purple); background:var(--purple-soft); }
.editable-page .ds-training-item.ds-workflow:before { content:"↗"; }
.editable-page .ds-training-item h3 { margin:0 0 4px; font-size:18px; }
.editable-page .ds-training-item p { margin:0; font-size:14px; }
.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.wp-content { min-height:50vh; }
.wp-content .entry-content { width:min(1180px,calc(100% - 64px)); margin:0 auto; padding:80px 0; }
.note { margin-top:18px; color:#6b7e8d; font-size:13px; }
.courses-hero { padding:88px 0 82px; }
.courses-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:72px; align-items:center; }
.courses-hero h1 { font-size:60px; }
.course-summary { padding:42px; background:var(--pale); border:1px solid #bfe8f8; border-radius:28px; }
.course-summary > div:not(.eyebrow) { padding:20px 0; border-bottom:1px solid #d4e9f2; }
.course-summary > div:last-child { border-bottom:0; }
.course-summary p { margin:0; }
.course-summary strong,.course-summary span { display:block; }
.course-summary span { color:var(--muted); line-height:1.45; margin-top:5px; }
.course-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.course-card { display:flex; flex-direction:column; min-height:430px; padding:30px; background:#fff; border:1px solid var(--line); border-radius:20px; }
.course-card-top { display:flex; align-items:center; margin-bottom:36px; color:var(--blue-dark); font-size:12px; font-weight:800; }
.course-card-top b { padding:7px 10px; border-radius:999px; background:var(--purple-soft); color:var(--purple-dark); }
.course-card h3 { font-size:27px; }
.course-card > p { color:var(--muted); line-height:1.55; }
.course-card ul { padding:18px 0 18px 18px; color:var(--muted); line-height:1.8; flex:1; }
.course-card > a { color:var(--navy); font-weight:700; border-top:1px solid var(--line); padding-top:18px; }
.booking-layout { display:grid; grid-template-columns:1fr .8fr; gap:80px; align-items:start; }
.booking-steps { display:grid; gap:14px; margin-top:36px; }
.booking-steps > div { padding:17px 0; border-bottom:1px solid var(--line); }
.booking-steps p { margin:0; }
.booking-steps strong,.booking-steps small { display:block; }
.booking-steps small { color:var(--muted); margin-top:4px; line-height:1.45; }
.booking-card { padding:36px; background:var(--navy); color:#fff; border-radius:26px; }
.booking-status { display:inline-flex; padding:8px 11px; border-radius:999px; background:rgba(91,67,237,.28); color:#ddd7ff; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.booking-card h3 { font-size:28px; margin:28px 0 18px; }
.date-placeholder { padding:18px 0; border-top:1px solid rgba(255,255,255,.16); }
.date-placeholder span,.date-placeholder small { display:block; }
.date-placeholder span { font-weight:700; }
.date-placeholder small { color:#b9c9d6; margin-top:5px; }
.booking-card .button { width:100%; margin-top:22px; }
.booking-card > p { color:#9fb4c4; font-size:12px; line-height:1.5; margin:16px 0 0; }
.faq-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.faq-grid article { padding:28px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.faq-grid p { color:var(--muted); line-height:1.55; margin-bottom:0; }
.posts-hero { padding:80px 0 58px; background:var(--pale); }
.posts-hero .section-head { margin-bottom:0; }
.posts-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.post-card { display:flex; flex-direction:column; min-height:390px; overflow:hidden; border:1px solid var(--line); border-radius:20px; background:#fff; transition:.2s ease; }
.post-card:hover { transform:translateY(-3px); box-shadow:0 18px 42px rgba(16,42,67,.09); }
.post-card-image { display:block; height:190px; background:linear-gradient(135deg,var(--pale),var(--purple-soft)); overflow:hidden; }
.post-card-image img { width:100%; height:100%; object-fit:cover; display:block; }
.post-card-body { display:flex; flex:1; flex-direction:column; padding:26px; }
.post-meta { color:var(--blue-dark); font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.post-card h2 { margin:12px 0; font-size:27px; }
.post-card p { color:var(--muted); line-height:1.55; }
.post-card .text-link { margin-top:auto; }
.pagination { margin-top:46px; }
.pagination .nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.pagination a,.pagination span { padding:10px 14px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.pagination .current { color:#fff; background:var(--purple); border-color:var(--purple); }
.article-hero { padding:80px 0 54px; background:var(--pale); }
.article-hero .wrap { max-width:900px; }
.article-hero h1 { max-width:900px; font-size:58px; }
.article-content { width:min(820px,calc(100% - 40px)); margin:0 auto; padding:72px 0 96px; font-size:19px; line-height:1.75; }
.article-content h2 { margin-top:55px; font-size:38px; }
.article-content h3 { margin-top:38px; }
.article-content img { max-width:100%; height:auto; border-radius:16px; }
.article-content a { color:var(--purple); text-decoration:underline; }
.article-content blockquote { margin:40px 0; padding:24px 30px; border-left:4px solid var(--purple); background:var(--purple-soft); }
.article-nav { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:60px; padding-top:30px; border-top:1px solid var(--line); }
.article-nav a { display:block; padding:20px; color:var(--navy); text-decoration:none; border:1px solid var(--line); border-radius:14px; }
.empty-state { padding:45px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.feature-list { display:grid; gap:14px; margin-top:28px; }
.feature-list > div { padding:20px 22px; border-left:4px solid var(--blue); background:#fff; }
.feature-list > div:nth-child(even) { border-color:var(--purple); }
.legal-content { width:min(900px,calc(100% - 40px)); margin:0 auto; padding:72px 0 96px; color:var(--muted); font-size:17px; line-height:1.7; }
.legal-content h2 { margin-top:52px; color:var(--navy); font-size:34px; }
.legal-content h3 { margin-top:34px; color:var(--navy); }
.legal-content table { display:block; width:100%; overflow-x:auto; border-collapse:collapse; }
.legal-content th,.legal-content td { padding:12px; border:1px solid var(--line); text-align:left; vertical-align:top; }
.editor-note { padding:18px 20px; border:1px solid #f0cf78; border-radius:14px; background:#fff8df; color:#6d5314; }
.partners-hero { padding:88px 0 82px; }
.partners-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:72px; align-items:center; }
.partners-hero h1 { font-size:60px; }
.partner-principles { padding:42px; color:#fff; background:var(--navy); border-radius:28px; position:relative; overflow:hidden; }
.partner-principles:after { content:""; position:absolute; width:220px; height:220px; right:-100px; top:-110px; border:40px solid rgba(91,67,237,.28); border-radius:50%; }
.partner-principles .eyebrow { color:#8ddfff; }
.partner-principles h2 { position:relative; z-index:1; font-size:38px; }
.partner-principles p { position:relative; z-index:1; color:#d5e3ed; font-size:18px; line-height:1.6; }
.partner-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.partner-card { min-height:440px; padding:28px; background:#fff; border:1px solid var(--line); border-radius:22px; transition:.25s ease; }
.partner-card:hover { transform:translateY(-4px); box-shadow:0 18px 42px rgba(16,42,67,.09); }
.partner-card-logo { height:115px; margin:24px 0 30px; padding:18px; border-radius:14px; background:#fff; border:1px solid #edf1f4; display:flex; align-items:center; justify-content:center; }
.partner-card-logo img { max-width:100%; max-height:100%; object-fit:contain; }
.partner-theme { color:var(--purple); font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.partner-card h3 { margin-top:12px; font-size:29px; }
.partner-card p { color:var(--muted); line-height:1.58; }
.collaboration-model { display:grid; grid-template-columns:1fr .9fr; gap:80px; align-items:start; }
.collaboration-steps { display:grid; gap:14px; }
.collaboration-steps > div { display:grid; grid-template-columns:42px 1fr; gap:14px; padding:20px; border:1px solid var(--line); border-radius:16px; }
.collaboration-steps span { color:var(--purple); font-size:12px; font-weight:800; }
.collaboration-steps p { margin:0; }
.collaboration-steps strong,.collaboration-steps small { display:block; }
.collaboration-steps small { color:var(--muted); margin-top:5px; line-height:1.45; }
@keyframes partner-scroll {
  from { transform:translateX(0); }
  to { transform:translateX(-744px); }
}
@keyframes gentle-float {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(-7px); }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .proof-panel,.partner-track { animation:none; }
}
@media (max-width:900px) {
  .wrap { width:min(100% - 36px,720px); }
  nav { position:relative; gap:16px; }
  nav img { width:190px; }
  nav .links { position:absolute; top:calc(100% + 1px); left:18px; right:18px; display:none; margin:0; padding:14px; background:#fff; border:1px solid var(--line); border-radius:0 0 18px 18px; box-shadow:0 18px 40px rgba(16,42,67,.13); }
  nav .links.is-open { display:block; }
  nav .links ul { display:block; }
  nav .links > ul > li { border-bottom:1px solid #edf1f4; }
  nav .links > ul > li:last-child { border-bottom:0; }
  nav .links > ul > li > a { min-height:48px; padding:0 42px 0 10px; }
  nav .links .menu-item-has-children > a:after { display:none; }
  nav .links .sub-menu { position:static; display:none; min-width:0; padding:0 0 10px 16px; visibility:visible; opacity:1; transform:none; border:0; border-radius:0; box-shadow:none; }
  nav .links .sub-menu.is-open { display:block; }
  nav .links .sub-menu a { padding:10px 12px; white-space:normal; }
  .menu-toggle { order:2; display:inline-flex; flex-direction:column; justify-content:center; gap:4px; width:44px; height:44px; margin-left:auto; padding:10px; color:var(--navy); background:#fff; border:1px solid var(--line); border-radius:10px; cursor:pointer; }
  .menu-toggle > span[aria-hidden] { display:block; width:100%; height:2px; background:currentColor; transition:.18s ease; }
  .menu-toggle[aria-expanded="true"] > span[aria-hidden]:nth-of-type(2) { transform:translateY(6px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] > span[aria-hidden]:nth-of-type(3) { opacity:0; }
  .menu-toggle[aria-expanded="true"] > span[aria-hidden]:nth-of-type(4) { transform:translateY(-6px) rotate(-45deg); }
  .submenu-toggle { position:absolute; top:7px; right:4px; display:flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; color:var(--navy); background:transparent; border:0; cursor:pointer; }
  .submenu-toggle:after { content:""; width:8px; height:8px; margin-top:-4px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); transition:transform .18s ease; }
  .submenu-toggle[aria-expanded="true"]:after { margin-top:4px; transform:rotate(225deg); }
  .desktop-demo { order:3; }
  .hero-grid,.problem-grid,.story-grid,.evidence,.security,.logo-proof .wrap,.course-teaser-grid,.courses-hero-grid,.booking-layout,.partner-teaser-grid,.partners-hero-grid,.collaboration-model { grid-template-columns:1fr; }
  .perspectives,.cap-grid,.applications,.sectors,.adapt-points,.course-grid,.faq-grid,.partner-grid,.posts-grid { grid-template-columns:1fr; }
  .editable-page > .wp-block-group.ds-card-grid { grid-template-columns:1fr 1fr; }
  .editable-page .ds-problem-grid { grid-template-columns:1fr; }
  .editable-page .ds-hero-grid,.editable-page .ds-logo-proof > .wp-block-columns,.editable-page .ds-home-courses > .wp-block-columns { grid-template-columns:1fr; }
  .editable-page .ds-perspectives { grid-template-columns:1fr 1fr; }
  .editable-page .ds-card-grid { grid-template-columns:1fr 1fr; }
  .editable-page .ds-hero-grid, .editable-page .ds-problem-grid { gap: 36px;}
  .editable-page .ds-proof-panel, .editable-page .ds-proof-fragmented { margin-top: 0px;}
  h1 { font-size:48px; }
  h2 { font-size:38px; }
  .adapt { padding:46px 30px; }
}
@media (max-width:560px) {
  .wrap { width:min(100% - 28px,720px); }
  nav { height:76px; }
  nav img { width:145px; }
  nav .desktop-demo { display:none; }
  .hero { padding:58px 0; }
  h1 { font-size:43px; }
  .hero-lead { font-size:23px; }
  .proof-panel { padding:30px 24px; }
  section { padding:70px 0; }
  .actions { align-items:flex-start; flex-direction:column; gap:12px; }
  .footer-grid { flex-direction:column; }
  .article-hero h1 { font-size:42px; }
  .article-nav { grid-template-columns:1fr; }
  .editable-page > .wp-block-group.ds-card-grid { grid-template-columns:1fr; }
  .editable-page > .wp-block-group.ds-section { padding: 24px 0 6px; }
  .editable-page .ds-perspectives,.editable-page .ds-card-grid,.editable-page .ds-home-sectors .ds-card-grid { grid-template-columns:1fr; }
  .editable-page > :where(:not(.alignwide):not(.alignfull)),
  .editable-page .ds-section > :where(:not(.alignwide):not(.alignfull)) { width:min(100% - 28px,720px); }
}
@media screen and (max-width:782px) {
  body.admin-bar header { top:46px; }
}
/* Prijskaarten */
.editable-page .ds-pricing-columns {
  align-items: stretch !important;
}

.editable-page .ds-pricing-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
}

.editable-page .ds-pricing-featured {
  border: 2px solid var(--purple);
  box-shadow: 0 18px 42px rgba(91, 67, 237, 0.12);
  transform: translateY(-8px);
}

.editable-page .ds-pricing-card h2 {
  margin-bottom: 8px;
  font-size: 34px;
}

.editable-page .ds-pricing-card .ds-price {
  color: var(--navy);
  font-size: 40px;
}

.editable-page .ds-pricing-card ul {
  flex: 1;
  margin: 20px 0 28px;
  padding-left: 22px;
}

.editable-page .ds-pricing-card .wp-block-buttons {
  margin-top: auto;
}

/* Prijstabel */
.editable-page .ds-pricing-table {
  overflow-x: auto;
  margin-top: 34px;
}

.editable-page .ds-pricing-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
}

.editable-page .ds-pricing-table th {
  padding: 18px;
  color: #fff;
  text-align: left;
  background: var(--navy);
}

.editable-page .ds-pricing-table td {
  padding: 18px;
  border-color: var(--line);
}

/* Inbegrepen */
.editable-page .ds-included-card {
  border-top: 3px solid var(--blue);
}

.editable-page .ds-included-card:nth-child(2) {
  border-top-color: var(--purple);
}

@media (max-width: 900px) {
  .editable-page .ds-pricing-columns {
    flex-wrap: wrap !important;
  }

  .editable-page .ds-pricing-columns > .wp-block-column {
    flex: 1 1 calc(50% - 13px) !important;
  }

  .editable-page .ds-pricing-featured {
    transform: none;
  }
}

@media (max-width: 600px) {
  .editable-page .ds-pricing-columns > .wp-block-column {
    flex: 1 1 100% !important;
  }
}
/* Berichtenhero gelijk aan de andere pagina's */
.posts-hero {
  padding: 88px 0 72px !important;
  background-color: var(--pale, #edf8fc) !important;
}

/* Berichtenoverzicht gelijk aan Productupdates en Prijzen */
.posts-hero + section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 36px 0 48px !important;
  background-color: var(--soft, #f6f8fa) !important;
}

.posts-hero + section > .wrap {
  width: min(1180px, calc(100% - 64px)) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
}

@media (max-width: 600px) {
  .posts-hero + section > .wrap {
    width: calc(100% - 32px) !important;
  }
}
/* Berichtenpagina in dezelfde stijl als Productupdates */
body .posts-hero {
  padding: 88px 0 72px !important;
  background-color: var(--pale, #edf8fc) !important;
}

body .posts-hero + section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 36px 0 48px !important;
  background-color: var(--soft, #f6f8fa) !important;
}

body .posts-hero + section > .wrap {
  width: min(1180px, calc(100% - 64px)) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
}

@media (max-width: 600px) {
  body .posts-hero + section > .wrap {
    width: calc(100% - 32px) !important;
  }
}
/* Bestaande algemene CSS */
/* ... */

/* Productupdates */
body .productupdates-overview.ds-productupdates-section {
  /* ... */
}

/* Berichtenpagina */
body .posts-hero {
  /* ... */
}

body .posts-hero + section {
  /* ... */
}
/* Sectie Een goede start lichter en rustiger */
.editable-page > .wp-block-group.ds-adapt {
  background-color: var(--pale, #edf8fc) !important;
  color: var(--navy, #102a43) !important;
}

/* Teksten terug naar donkere huisstijlkleur */
.editable-page > .wp-block-group.ds-adapt h2,
.editable-page > .wp-block-group.ds-adapt h3,
.editable-page > .wp-block-group.ds-adapt p,
.editable-page > .wp-block-group.ds-adapt li {
  color: var(--navy, #102a43) !important;
}

/* Kickstart-onderdelen als lichte kaarten */
.editable-page .ds-adapt .wp-block-list li {
  position: relative;
  margin-bottom: 12px;
  padding: 14px 18px 14px 46px;
  list-style: none;
  background: #ffffff;
  border: 1px solid rgba(16, 42, 67, 0.12);
  border-radius: 12px;
}

/* Vinkje in plaats van gewone opsommingsbol */
.editable-page .ds-adapt .wp-block-list li::before {
  content: "✓";
  position: absolute;
  top: 13px;
  left: 18px;
  color: #5b43ed;
  font-weight: 800;
}

/* Standaard inspringing van de lijst verwijderen */
.editable-page .ds-adapt .wp-block-list {
  margin: 24px 0 0;
  padding: 0;
}
/* Sectielabel Een goede start in accentblauw */
body .editable-page .ds-adapt .ds-eyebrow {
  color: #169bd5 !important;
}
/* Homepage: oude automatische sectoriconen verbergen */
body.home .ds-home-sectors .ds-card::before {
  display: none !important;
  content: none !important;
}