/*
  Visuele taal gebaseerd op De Argumentenfabriek:
  wit canvas, zwarte typografie, dikke gekleurde routes,
  open knooppunten en compacte outline-blokken.
*/
:root{
  --che-primary:#20315c;
  --che-primary-dark:#1d2c53;
  --che-primary-deep:#1f4075;
  --che-secondary:#aa334d;
  --che-tertiary:#399356;
  --che-quaternary:#3d89be;
  --che-accent:#e0681d;
  --che-soft-blue:#d2e2ee;
  --che-soft-gray:#e9eaef;
  --map-blue:var(--che-quaternary);
  --map-blue-2:var(--che-primary-deep);
  --map-orange:var(--che-accent);
  --map-magenta:var(--che-secondary);
  --map-green:var(--che-tertiary);
  --map-purple:var(--che-primary);
  --che-cyan:var(--map-blue);
  --che-yellow:var(--map-orange);
  --che-pink:var(--map-magenta);
  --che-green:var(--map-green);
  --che-purple:var(--map-purple);
  --che-blue:var(--map-blue-2);
  --pale-blue:#edf5fa;
  --pale-orange:#fdf0e8;
  --pale-magenta:#f6eaed;
  --pale-green:#edf7f1;
  --pale-purple:#e9eaef;
  --pale-blue-2:#e8eef6;
  --ink:var(--che-primary);
  --muted:#37466d;
  --paper:#fff;
  --route-size:56px;
  --question-left:1000px;
  --question-width:748px;
  --question-tab-offset:-34px;
  --font-map:"Arial Narrow","Aptos Narrow","Roboto Condensed","Arial",sans-serif;
}

*{box-sizing:border-box}

body{
  margin:0;
  background:#fff;
  color:var(--ink);
  font-family:"DM Sans",var(--font-map);
}

a{color:inherit}

.site-header{
  position:sticky;
  top:0;
  z-index:40;
  background:#fff;
  border-top:6px solid var(--che-primary);
  border-bottom:1px solid var(--che-soft-gray);
  box-shadow:0 12px 28px rgba(32,49,92,.08);
  padding:13px 34px 12px;
}

.site-header__inner{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
  max-width:1840px;
  margin:0 auto;
}

.site-brand{
  display:inline-flex;
  align-items:center;
  min-width:242px;
  color:var(--che-primary);
  text-decoration:none;
}

.site-brand__image{
  display:block;
  width:212px;
  height:auto;
}

.site-header__title{
  min-width:0;
}

.site-kicker{
  display:block;
  margin:0 0 3px;
  color:var(--che-tertiary);
  font:950 13px/1 var(--font-map);
  letter-spacing:.02em;
  text-transform:uppercase;
}

.site-header h1{
  margin:0;
  color:var(--che-primary);
  font-size:clamp(1.35rem,1.7vw,2.05rem);
  line-height:1;
  letter-spacing:0;
  font-weight:950;
}

.site-header p{
  margin:3px 0 0;
  max-width:760px;
  color:var(--muted);
  font-size:15px;
  line-height:1.25;
  font-weight:700;
}

.nav,
.filter{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}

.nav{
  justify-content:flex-end;
  margin-top:0;
}

.filter{margin-bottom:18px}

.filter button,
.search{
  border:3px solid var(--ink);
  background:#fff;
  color:var(--ink);
  font:950 16px/1 var(--font-map);
  border-radius:8px;
  padding:8px 13px 7px;
  text-decoration:none;
  box-shadow:none;
}

.nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  border:2px solid var(--che-primary);
  background:#fff;
  color:var(--che-primary);
  font:950 15px/1 var(--font-map);
  border-radius:999px;
  padding:10px 18px 9px;
  text-decoration:none;
  box-shadow:none;
}

.filter button{cursor:pointer}

.filter button.active,
.filter button:hover{
  background:var(--che-primary);
  color:#fff;
}

.nav a.active{
  border-color:var(--che-tertiary);
  background:var(--che-tertiary);
  color:#fff;
}

.nav a:hover{
  border-color:var(--che-tertiary);
  color:var(--che-tertiary);
}

.nav a.active:hover{
  color:#fff;
}

.search{
  min-width:300px;
  font-weight:850;
}

.search::placeholder{color:#333}

.page{
  max-width:1900px;
  margin:0 auto;
  padding:22px 30px 56px;
}

.panel{
  background:#fff;
  border:0;
  border-radius:0;
  box-shadow:none;
  padding:0;
  overflow:auto;
}

.full-text{
  margin-top:28px;
  background:#fff;
  border:3px solid #000;
  border-radius:8px;
  box-shadow:none;
  padding:24px 30px 28px;
}

.full-text h2{
  margin:0 0 16px;
  font-size:30px;
  line-height:1;
  letter-spacing:0;
  font-weight:950;
}

.full-text h3{
  margin:26px 0 9px;
  padding-top:15px;
  border-top:3px solid #000;
  font-size:22px;
}

.full-text p{
  max-width:1120px;
  color:#000;
  line-height:1.45;
  font-size:18px;
  font-weight:650;
}

.full-text table{
  border-collapse:collapse;
  width:100%;
  color:#000;
  font-size:15px;
}

.full-text th,
.full-text td{
  padding:9px 11px;
  border-bottom:2px solid #000;
  text-align:left;
  vertical-align:top;
}

.full-text th{
  background:#fff;
  font-size:13px;
  font-weight:950;
}

.route-1{--route-color:var(--map-blue);--route-pale:var(--pale-blue)}
.route-2{--route-color:var(--map-purple);--route-pale:var(--pale-purple)}
.route-3{--route-color:var(--map-green);--route-pale:var(--pale-green)}
.route-4{--route-color:var(--map-magenta);--route-pale:var(--pale-magenta)}
.route-5{--route-color:var(--map-orange);--route-pale:var(--pale-orange)}
.route-6{--route-color:var(--map-blue-2);--route-pale:var(--pale-blue-2)}

.route-dim{
  opacity:.13;
  filter:grayscale(1);
}

.route-glow{
  filter:saturate(1.08);
}

/* Beleidskaart */
.map-panel{
  overflow:hidden;
}

.policy-map{
  position:relative;
  width:1800px;
  height:980px;
  background:#fff;
  border-radius:0;
  overflow:hidden;
  transform-origin:top left;
}

.map-title,
.map-subtitle{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.central-ball{
  position:absolute;
  left:138px;
  top:312px;
  width:318px;
  height:318px;
  border-radius:50%;
  background:var(--che-primary);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:52px;
  font-size:28px;
  line-height:1.12;
  font-weight:950;
  z-index:10;
}

.policy-routes{
  position:absolute;
  inset:0;
  width:1760px;
  height:980px;
  z-index:2;
  pointer-events:none;
}

.route-path{
  fill:none;
  stroke:var(--route-color);
  stroke-width:52;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.step-card{
  position:absolute;
  left:520px;
  width:300px;
  height:92px;
  background:#fff;
  border:5px solid var(--route-color);
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--che-primary);
  font-weight:900;
  font-size:24px;
  line-height:1.06;
  z-index:5;
}

.step-card small{
  display:block;
  color:var(--che-primary);
  font-size:20px;
  line-height:1;
  margin-bottom:5px;
  font-weight:900;
}

.step-card.route-1{top:60px}
.step-card.route-2{top:212px}
.step-card.route-3{top:364px}
.step-card.route-4{top:516px}
.step-card.route-5{top:668px}
.step-card.route-6{top:820px}

.route-dot{
  position:absolute;
  left:872px;
  width:74px;
  height:74px;
  border-radius:50%;
  background:#fff;
  border:18px solid var(--che-primary);
  z-index:7;
}

.route-dot.route-1{top:69px}
.route-dot.route-2{top:221px}
.route-dot.route-3{top:373px}
.route-dot.route-4{top:525px}
.route-dot.route-5{top:677px}
.route-dot.route-6{top:829px}

.small-dot{
  position:absolute;
  left:976px;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#fff;
  border:10px solid var(--che-primary);
  z-index:7;
}

.small-dot.route-1{top:85px}
.small-dot.route-2{top:237px}
.small-dot.route-3{top:389px}
.small-dot.route-4{top:541px}
.small-dot.route-5{top:693px}
.small-dot.route-6{top:845px}

.question-card{
  position:absolute;
  left:var(--question-left);
  width:var(--question-width);
  height:134px;
  background:#fff;
  border:4px solid var(--route-color);
  border-radius:12px;
  padding:0 22px 14px 34px;
  color:var(--che-primary);
  z-index:6;
  overflow:hidden;
}

.question-card h2{
  display:inline-block;
  position:relative;
  left:var(--question-tab-offset);
  top:-4px;
  max-width:600px;
  margin:0 0 2px;
  padding:8px 18px 8px;
  color:var(--che-primary);
  background:var(--route-pale);
  border:4px solid var(--route-color);
  border-bottom-width:3px;
  border-radius:12px 12px 0 0;
  font-size:16px;
  line-height:1.08;
  font-weight:900;
}

.question-card ul{
  position:relative;
  margin:0;
  padding:0;
  list-style:none;
  font-size:13.5px;
  line-height:1.22;
  font-weight:800;
}

.question-card ul::before{
  content:"";
  position:absolute;
  left:8px;
  top:11px;
  bottom:11px;
  width:3px;
  background:var(--che-primary);
}

.question-card li{
  position:relative;
  padding-left:29px;
  margin:0 0 2px;
}

.question-card li::before{
  content:"";
  position:absolute;
  left:0;
  top:.12em;
  width:15px;
  height:15px;
  border:3px solid var(--che-primary);
  background:#fff;
  border-radius:50%;
  z-index:1;
}

.question-card.route-1{top:48px}
.question-card.route-2{top:200px;height:130px}
.question-card.route-3{top:352px;height:138px}
.question-card.route-4{top:504px;height:138px}
.question-card.route-5{top:656px;height:138px}
.question-card.route-6{top:828px;height:126px}

.map-note{
  position:absolute;
  left:64px;
  bottom:20px;
  width:760px;
  color:#000;
  font-size:13px;
  line-height:1.2;
  font-weight:800;
}

.brand{
  position:absolute;
  right:44px;
  bottom:4px;
  font-weight:950;
  color:#000;
  font-size:16px;
  line-height:1;
  text-align:right;
}


/* Relatieverkenner */
.page-relations{
  max-width:1900px;
}

.relation-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 376px;
  gap:18px;
  align-items:start;
}

.relation-panel{
  overflow:hidden;
}

.relation-map{
  position:relative;
  width:1440px;
  height:960px;
  background:#fff;
  overflow:hidden;
}

.relation-map svg{
  position:absolute;
  inset:0;
  width:1440px;
  height:960px;
  z-index:1;
  pointer-events:none;
}

.relation-rail{
  position:absolute;
  left:205px;
  width:1100px;
  height:22px;
  border-radius:999px;
  background:var(--route-color);
  opacity:.28;
  z-index:0;
}

.lane-label{
  position:absolute;
  left:34px;
  width:172px;
  height:68px;
  border-radius:999px;
  background:#000;
  color:#fff;
  border:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:21px;
  line-height:1;
  font-weight:950;
  z-index:3;
}

.relation-node{
  position:absolute;
  border-radius:999px;
  background:#fff;
  border:4px solid var(--route-color);
  color:#000;
  font:950 14px/1.03 var(--font-map);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
  white-space:normal;
  padding:6px 10px;
  box-shadow:none;
  cursor:pointer;
  z-index:4;
  transition:background-color .12s ease, opacity .12s ease, transform .12s ease;
}

.relation-node:hover,
.relation-node.active{
  transform:translateY(-2px);
  background:var(--route-pale);
}

.relation-node.active{
  border-color:#000;
  outline:6px solid var(--route-color);
  outline-offset:0;
}

.relation-node.related{
  background:var(--route-pale);
}

.relation-node.dim{
  opacity:.18;
  filter:grayscale(1);
}

.edge{
  fill:none;
  stroke:#000;
  stroke-width:4;
  opacity:.78;
}

.edge.outgoing{
  stroke:var(--map-blue-2);
}

.edge.incoming{
  stroke:#000;
  stroke-dasharray:10 8;
}

.edge.dim{
  opacity:.08;
}

.detail{
  background:#fff;
  border:3px solid #000;
  border-radius:8px;
  box-shadow:none;
  padding:20px;
  position:sticky;
  top:116px;
  max-height:calc(100vh - 140px);
  overflow:auto;
}

.detail h2{
  margin:0 0 8px;
  color:#000;
  font-size:28px;
  line-height:1;
  font-weight:950;
}

.detail h3{
  margin:18px 0 7px;
  font-size:19px;
  line-height:1;
}

.detail p{
  color:#000;
  line-height:1.35;
  font-size:17px;
  font-weight:700;
}

.tag{
  display:inline-block;
  border-radius:999px;
  padding:5px 10px 4px;
  background:#fff;
  border:3px solid #000;
  color:#000;
  font-weight:950;
  font-size:12px;
  line-height:1;
}

.rel-list{
  margin:0;
  padding:0;
  list-style:none;
}

.rel-list li{
  margin:7px 0;
}

.rel-link{
  width:100%;
  text-align:left;
  border:2px solid #000;
  background:#fff;
  border-radius:8px;
  padding:8px 10px;
  color:#000;
  font:800 15px/1.2 var(--font-map);
  cursor:pointer;
}

.rel-link:hover{
  background:#000;
  color:#fff;
}

.layer-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(220px,1fr));
  gap:12px;
}

.summary-card{
  border:4px solid var(--route-color);
  background:#fff;
  border-radius:10px;
  padding:13px 15px;
  color:#000;
  text-align:left;
  font-family:var(--font-map);
  cursor:pointer;
}

.summary-card:hover{
  background:var(--route-pale);
}

.summary-card strong,
.summary-card span,
.summary-card small{
  display:block;
}

.summary-card strong{
  font-size:18px;
  line-height:1;
  font-weight:950;
}

.summary-card span{
  margin-top:3px;
  font-size:22px;
  line-height:1;
  font-weight:950;
}

.summary-card small{
  margin-top:8px;
  font-size:14px;
  font-weight:850;
}

.relation-table-wrap{
  max-height:680px;
  overflow-y:auto;
  overflow-x:hidden;
}

.relation-table-wrap table{
  table-layout:fixed;
}

.relation-table-wrap th,
.relation-table-wrap td{
  overflow-wrap:anywhere;
}

/* Cycluspagina */
.page-cycle{
  max-width:1900px;
}

.cycle-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) 430px;
  gap:24px;
  align-items:stretch;
  margin-bottom:24px;
}

.cycle-intro h2{
  margin:0;
  max-width:920px;
  color:var(--che-primary);
  font-size:clamp(2rem,3vw,3.4rem);
  line-height:.96;
  font-weight:950;
}

.cycle-intro p{
  max-width:980px;
  margin:14px 0 0;
  color:#000;
  font-size:20px;
  line-height:1.35;
  font-weight:700;
}

.cycle-summary{
  display:grid;
  gap:10px;
  margin:0;
}

.cycle-summary div{
  border-left:9px solid var(--che-tertiary);
  background:var(--pale-green);
  padding:15px 17px;
}

.cycle-summary div:nth-child(2){
  border-left-color:var(--che-quaternary);
  background:var(--pale-blue);
}

.cycle-summary div:nth-child(3){
  border-left-color:var(--che-secondary);
  background:var(--pale-magenta);
}

.cycle-summary dt{
  color:var(--che-primary);
  font:950 30px/.95 var(--font-map);
}

.cycle-summary dd{
  margin:5px 0 0;
  color:#000;
  font-weight:800;
  line-height:1.2;
}

.cycle-flow{
  display:grid;
  grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr) 58px minmax(0,1fr);
  align-items:stretch;
  gap:0;
  margin:24px 0 30px;
}

.flow-stage{
  border:3px solid var(--che-primary);
  border-radius:8px;
  background:#fff;
  padding:20px 22px 22px;
  min-width:0;
}

.flow-inputs{border-color:var(--che-quaternary)}
.flow-plan{border-color:var(--che-primary)}
.flow-output{border-color:var(--che-tertiary)}

.flow-stage h2{
  margin:0;
  color:var(--che-primary);
  font-size:28px;
  line-height:1;
  font-weight:950;
}

.flow-stage p{
  margin:10px 0 14px;
  color:#000;
  font-size:17px;
  line-height:1.3;
  font-weight:750;
}

.flow-stage ul,
.flow-stage ol{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
}

.flow-stage ul li{
  display:grid;
  gap:4px;
  padding:12px 0 0;
  border-top:2px solid var(--che-soft-gray);
  list-style:none;
}

.flow-stage ol{
  counter-reset:flow-step;
}

.flow-stage ol li{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:start;
  color:#000;
  font-size:16px;
  line-height:1.25;
  font-weight:800;
  list-style:none;
}

.flow-stage ol li::before{
  counter-increment:flow-step;
  content:counter(flow-step);
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--che-primary);
  color:#fff;
  font:950 16px/1 var(--font-map);
}

.flow-stage strong{
  color:var(--che-primary);
  font-size:17px;
  line-height:1.05;
}

.flow-stage span{
  color:#000;
  font-size:15px;
  line-height:1.25;
  font-weight:700;
}

.flow-connector{
  position:relative;
  min-height:100%;
}

.flow-connector::before{
  content:"";
  position:absolute;
  top:50%;
  left:8px;
  right:8px;
  height:6px;
  background:var(--che-primary);
  border-radius:999px;
  transform:translateY(-50%);
}

.flow-connector::after{
  content:"";
  position:absolute;
  top:50%;
  right:2px;
  width:18px;
  height:18px;
  border-top:6px solid var(--che-primary);
  border-right:6px solid var(--che-primary);
  transform:translateY(-50%) rotate(45deg);
}

.pdca-section{
  display:grid;
  grid-template-columns:minmax(0,1fr) 420px;
  gap:24px;
  align-items:stretch;
  margin:30px 0;
}

.pdca-wheel{
  position:relative;
  min-height:520px;
  border:3px solid var(--che-primary);
  border-radius:8px;
  background:linear-gradient(135deg,#fff 0%,var(--pale-blue) 100%);
  overflow:hidden;
}

.pdca-core{
  position:absolute;
  left:50%;
  top:50%;
  display:grid;
  place-items:center;
  width:150px;
  height:150px;
  border-radius:50%;
  background:var(--che-primary);
  color:#fff;
  text-align:center;
  font:950 34px/.9 var(--font-map);
  transform:translate(-50%,-50%);
  z-index:2;
}

.pdca-core span{
  font-size:16px;
  line-height:1;
}

.pdca-step{
  position:absolute;
  width:39%;
  min-height:160px;
  border:3px solid var(--che-primary);
  border-radius:8px;
  background:#fff;
  padding:18px;
}

.pdca-step h2{
  margin:0;
  color:var(--che-primary);
  font-size:30px;
  line-height:1;
  font-weight:950;
}

.pdca-step p{
  margin:9px 0 0;
  color:#000;
  font-size:17px;
  line-height:1.28;
  font-weight:750;
}

.pdca-plan{
  top:32px;
  left:32px;
  border-color:var(--che-quaternary);
}

.pdca-do{
  top:32px;
  right:32px;
  border-color:var(--che-tertiary);
}

.pdca-check{
  right:32px;
  bottom:32px;
  border-color:var(--che-secondary);
}

.pdca-act{
  left:32px;
  bottom:32px;
  border-color:var(--che-accent);
}

.pdca-notes,
.context-block,
.cycle-agenda,
.source-panel{
  border:3px solid var(--che-primary);
  border-radius:8px;
  background:#fff;
  padding:22px 24px;
}

.pdca-notes h2,
.context-block h2,
.cycle-agenda h2,
.source-panel h2{
  margin:0 0 12px;
  color:var(--che-primary);
  font-size:28px;
  line-height:1;
  font-weight:950;
}

.pdca-notes p,
.context-block p,
.cycle-agenda p,
.source-panel p{
  margin:0;
  color:#000;
  font-size:17px;
  line-height:1.35;
  font-weight:700;
}

.pdca-notes ul{
  display:grid;
  gap:10px;
  margin:16px 0 0;
  padding:0;
}

.pdca-notes li{
  list-style:none;
  padding-left:22px;
  position:relative;
  color:#000;
  font-size:16px;
  line-height:1.3;
  font-weight:800;
}

.pdca-notes li::before{
  content:"";
  position:absolute;
  left:0;
  top:.35em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--che-tertiary);
}

.context-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:30px 0;
}

.context-block:nth-child(1){border-color:var(--che-quaternary)}
.context-block:nth-child(2){border-color:var(--che-tertiary)}
.context-block:nth-child(3){border-color:var(--che-secondary)}

.agenda-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}

.agenda-grid article{
  border-left:8px solid var(--che-primary);
  background:var(--che-soft-gray);
  padding:15px;
}

.agenda-grid article:nth-child(1){border-left-color:var(--che-quaternary);background:var(--pale-blue)}
.agenda-grid article:nth-child(2){border-left-color:var(--che-accent);background:var(--pale-orange)}
.agenda-grid article:nth-child(3){border-left-color:var(--che-tertiary);background:var(--pale-green)}
.agenda-grid article:nth-child(4){border-left-color:var(--che-secondary);background:var(--pale-magenta)}

.agenda-grid span,
.agenda-grid strong{
  display:block;
}

.agenda-grid span{
  color:var(--che-primary);
  font:950 14px/1 var(--font-map);
  text-transform:uppercase;
}

.agenda-grid strong{
  margin-top:7px;
  color:#000;
  font:950 21px/.98 var(--font-map);
}

.agenda-grid p{
  margin-top:8px;
  font-size:15px;
  line-height:1.25;
}

.source-panel{
  border-color:var(--che-soft-gray);
}

.source-panel ul{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:16px 0 0;
  padding:0;
}

.source-panel li{
  list-style:none;
}

.source-panel a{
  display:inline-flex;
  align-items:center;
  border:2px solid var(--che-primary);
  border-radius:999px;
  padding:8px 12px;
  color:var(--che-primary);
  text-decoration:none;
  font:900 14px/1 var(--font-map);
}

.source-panel a:hover{
  border-color:var(--che-tertiary);
  color:var(--che-tertiary);
}

/*
  Rustige, redactionele laag
  De inhoud blijft compact waar de visualisaties dat nodig hebben, maar de
  pagina eromheen krijgt meer ademruimte, lichtere typografie en minder kaders.
*/
body{
  color:var(--che-primary);
  font-family:"DM Sans","Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
}

.site-header{
  position:relative;
  padding:24px 44px;
  border-top:4px solid var(--che-primary);
  border-bottom:1px solid var(--che-soft-gray);
  box-shadow:none;
}

.site-header__inner{
  max-width:none;
  width:100%;
  gap:40px;
}

.site-brand{
  min-width:190px;
}

.site-brand__image{
  width:178px;
}

.site-kicker{
  margin-bottom:6px;
  font:700 12px/1.2 "DM Sans","Segoe UI",Arial,sans-serif;
  letter-spacing:.08em;
}

.site-header h1{
  font-size:clamp(1.45rem,1.8vw,2rem);
  line-height:1.08;
  font-weight:750;
}

.site-header p{
  margin-top:7px;
  color:#69738b;
  font-size:14px;
  line-height:1.45;
  font-weight:400;
}

.nav{
  gap:24px;
}

.nav a{
  min-height:0;
  padding:9px 2px 7px;
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0;
  background:transparent;
  font:650 15px/1.2 "DM Sans","Segoe UI",Arial,sans-serif;
}

.nav a.active,
.nav a.active:hover{
  border-color:var(--che-tertiary);
  background:transparent;
  color:var(--che-primary);
}

.nav a:hover{
  border-color:var(--che-soft-blue);
  color:var(--che-primary);
}

.page{
  max-width:1500px;
  padding:64px 48px 120px;
}

.page-cycle,
.page-relations{
  max-width:1500px;
}

.filter{
  width:fit-content;
  max-width:100%;
  gap:4px;
  margin-bottom:56px;
  padding:6px;
  border-radius:18px;
  background:#f4f5f8;
}

.filter button,
.search{
  border:0;
  border-radius:12px;
  background:transparent;
  color:#566079;
  font:600 14px/1.2 "DM Sans","Segoe UI",Arial,sans-serif;
  padding:11px 15px;
}

.filter button.active,
.filter button:hover{
  background:#fff;
  color:var(--che-primary);
  box-shadow:0 1px 5px rgba(32,49,92,.1);
}

.search{
  min-width:250px;
  background:#fff;
  outline:1px solid transparent;
}

.search:focus{
  outline-color:var(--che-soft-blue);
}

.search::placeholder{
  color:#8790a4;
}

.panel{
  border-radius:22px;
  background:#fafbfc;
}

.full-text{
  margin-top:96px;
  padding:64px 0 0;
  border:0;
  border-top:1px solid var(--che-soft-gray);
  border-radius:0;
}

.full-text h2{
  margin-bottom:28px;
  color:var(--che-primary);
  font-size:clamp(1.8rem,2.5vw,2.6rem);
  line-height:1.08;
  font-weight:750;
}

.full-text h3{
  margin-top:40px;
  padding-top:0;
  border-top:0;
  font-size:22px;
  font-weight:700;
}

.full-text p{
  max-width:none;
  margin:0 0 20px;
  color:#4e5870;
  font-size:17px;
  line-height:1.75;
  font-weight:400;
}

.full-text th,
.full-text td{
  padding:15px 12px;
  border-bottom:1px solid var(--che-soft-gray);
}

.full-text th{
  background:transparent;
  color:#69738b;
  font-weight:650;
}

/* Beleidskaart: behoud de routekaart, temper de grafische intensiteit. */
.map-panel{
  border:1px solid #eef0f4;
}

.policy-map{
  background:linear-gradient(145deg,#fff 0%,#f8fafc 100%);
  transform:scale(.74);
}

.panel.map-panel{
  height:726px;
}

.central-ball{
  left:154px;
  top:329px;
  width:284px;
  height:284px;
  padding:44px;
  font-size:24px;
  line-height:1.25;
  font-weight:700;
  box-shadow:0 16px 42px rgba(32,49,92,.16);
}

.route-path{
  stroke-width:24;
  opacity:.68;
}

.step-card{
  border-width:2px;
  border-radius:10px;
  color:var(--che-primary);
  font-size:21px;
  line-height:1.15;
  font-weight:650;
}

.step-card small{
  margin-bottom:7px;
  color:#7a849a;
  font-size:13px;
  font-weight:650;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.route-dot{
  border-width:9px;
  border-color:var(--route-color);
}

.small-dot{
  border-width:6px;
  border-color:var(--route-color);
}

.question-card{
  padding:18px 24px;
  border:1px solid #dde2ea;
  border-left:4px solid var(--route-color);
  border-radius:10px;
  color:#4e5870;
  box-shadow:0 8px 24px rgba(32,49,92,.06);
}

.question-card h2{
  display:block;
  position:static;
  max-width:none;
  margin:0 0 9px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--che-primary);
  font-size:16px;
  line-height:1.2;
  font-weight:700;
}

.question-card ul{
  color:#59637a;
  font-size:13px;
  line-height:1.35;
  font-weight:400;
}

.question-card ul::before{
  display:none;
}

.question-card li{
  margin-bottom:3px;
  padding-left:15px;
}

.question-card li::before{
  top:.55em;
  width:5px;
  height:5px;
  border:0;
  background:var(--route-color);
}

.map-note{
  color:#7a849a;
  font-size:12px;
  font-weight:400;
}

.brand{
  color:#7a849a;
  font-weight:700;
}

/* Relaties */
.relation-layout{
  grid-template-columns:960px minmax(320px,1fr);
  gap:32px;
}

.relation-panel{
  border:1px solid #eef0f4;
}

.relation-map{
  width:960px;
  height:760px;
  background:linear-gradient(145deg,#fff 0%,#f8fafc 100%);
  transform:none;
  transform-origin:top left;
}

.relation-map svg{
  width:960px;
  height:760px;
}

.panel.relation-panel{
  height:760px;
}

.relation-rail{
  left:178px;
  width:742px;
  height:10px;
  opacity:.14;
}

.lane-label{
  left:24px;
  width:155px;
  height:54px;
  background:var(--che-primary);
  font-size:16px;
  font-weight:700;
}

.relation-node{
  border-width:2px;
  color:var(--che-primary);
  font:650 13px/1.15 "DM Sans","Segoe UI",Arial,sans-serif;
  transition:background-color .2s ease,opacity .2s ease,transform .2s ease;
}

.relation-node.active{
  border-color:var(--che-primary);
  outline:3px solid var(--route-color);
}

.edge{
  stroke:#8e97a9;
  stroke-width:1.5;
  opacity:.5;
}

.edge.outgoing{
  stroke:var(--che-quaternary);
}

.detail{
  --detail-color:var(--che-primary);
  position:relative;
  top:0;
  min-height:760px;
  max-height:none;
  padding:30px;
  border:1px solid var(--che-soft-gray);
  border-left:4px solid var(--detail-color);
  border-radius:10px;
  box-shadow:0 8px 24px rgba(32,49,92,.06);
}

.detail-kicker{
  display:block;
  margin-bottom:14px;
  color:var(--detail-color);
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.detail h2{
  margin-bottom:12px;
  color:var(--che-primary);
  font-size:26px;
  line-height:1.15;
  font-weight:750;
}

.detail h3{
  margin-top:28px;
  font-size:17px;
  font-weight:700;
}

.detail p{
  color:#59637a;
  font-size:15px;
  line-height:1.65;
  font-weight:400;
}

.tag{
  padding:5px 9px;
  border:0;
  background:color-mix(in srgb,var(--detail-color) 12%,#fff);
  color:var(--detail-color);
  font-size:11px;
  font-weight:700;
}

.rel-list li{
  margin:8px 0;
}

.rel-link{
  padding:10px 0;
  border:0;
  border-bottom:1px solid var(--che-soft-gray);
  border-radius:0;
  color:var(--che-primary);
  font:500 14px/1.35 "DM Sans","Segoe UI",Arial,sans-serif;
}

.rel-link:hover{
  background:transparent;
  color:var(--che-tertiary);
}

.layer-summary{
  gap:24px;
}

.summary-card{
  padding:24px;
  border:1px solid var(--che-soft-gray);
  border-top:3px solid var(--route-color);
  border-radius:12px;
  color:var(--che-primary);
  font-family:"DM Sans","Segoe UI",Arial,sans-serif;
}

.summary-card strong{
  font-size:17px;
  font-weight:700;
}

.summary-card span{
  margin-top:8px;
  font-size:20px;
  font-weight:650;
}

.summary-card small{
  color:#69738b;
  font-size:13px;
  line-height:1.4;
  font-weight:400;
}

.relation-table-wrap{
  max-height:none;
  overflow:visible;
}

/* Cyclus: secties in plaats van een aaneenschakeling van zware kaarten. */
.cycle-intro{
  grid-template-columns:minmax(0,1fr) 360px;
  gap:96px;
  margin-bottom:104px;
}

.cycle-intro h2{
  max-width:850px;
  font-size:clamp(2.35rem,4vw,4.4rem);
  line-height:1.04;
  font-weight:750;
  letter-spacing:-.025em;
}

.cycle-intro p{
  max-width:800px;
  margin-top:24px;
  color:#59637a;
  font-size:18px;
  line-height:1.7;
  font-weight:400;
}

.cycle-summary{
  gap:0;
  align-self:end;
}

.cycle-summary div,
.cycle-summary div:nth-child(2),
.cycle-summary div:nth-child(3){
  padding:20px 0;
  border:0;
  border-top:1px solid var(--che-soft-gray);
  background:transparent;
}

.cycle-summary div:last-child{
  border-bottom:1px solid var(--che-soft-gray);
}

.cycle-summary dt{
  font:700 24px/1.1 "DM Sans","Segoe UI",Arial,sans-serif;
}

.cycle-summary dd{
  margin-top:7px;
  color:#69738b;
  font-size:14px;
  line-height:1.5;
  font-weight:400;
}

.cycle-flow{
  grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr) 72px minmax(0,1fr);
  margin:0 0 112px;
}

.flow-stage{
  padding:32px;
  border:1px solid var(--che-soft-gray);
  border-top:4px solid var(--che-primary);
  border-radius:16px;
}

.flow-inputs{border-color:var(--che-soft-gray);border-top-color:var(--che-quaternary)}
.flow-plan{border-color:var(--che-soft-gray);border-top-color:var(--che-primary)}
.flow-output{border-color:var(--che-soft-gray);border-top-color:var(--che-tertiary)}

.flow-stage h2{
  font-size:24px;
  line-height:1.2;
  font-weight:700;
}

.flow-stage p{
  margin:14px 0 24px;
  color:#69738b;
  font-size:15px;
  line-height:1.55;
  font-weight:400;
}

.flow-stage ul,
.flow-stage ol{
  gap:16px;
}

.flow-stage ul li{
  gap:6px;
  padding-top:16px;
  border-top:1px solid var(--che-soft-gray);
}

.flow-stage ol li{
  grid-template-columns:28px minmax(0,1fr);
  color:#59637a;
  font-size:14px;
  line-height:1.5;
  font-weight:450;
}

.flow-stage ol li::before{
  width:24px;
  height:24px;
  font:650 13px/1 "DM Sans","Segoe UI",Arial,sans-serif;
}

.flow-stage strong{
  font-size:15px;
  line-height:1.3;
  font-weight:700;
}

.flow-stage span{
  color:#69738b;
  font-size:14px;
  line-height:1.5;
  font-weight:400;
}

.flow-connector::before{
  left:18px;
  right:18px;
  height:2px;
  background:#c8ced9;
}

.flow-connector::after{
  right:16px;
  width:10px;
  height:10px;
  border-width:2px;
  border-color:#9ba4b5;
}

.pdca-section{
  grid-template-columns:minmax(0,1fr) 380px;
  gap:64px;
  margin:0 0 112px;
}

.pdca-wheel{
  min-height:560px;
  border:1px solid #e1e5ec;
  border-radius:24px;
  background:linear-gradient(145deg,#fbfcfd 0%,#f0f5f8 100%);
}

.pdca-core{
  width:132px;
  height:132px;
  font:750 29px/1 "DM Sans","Segoe UI",Arial,sans-serif;
  box-shadow:0 14px 34px rgba(32,49,92,.18);
}

.pdca-core span{
  font-size:13px;
  font-weight:500;
}

.pdca-step{
  min-height:150px;
  padding:24px;
  border:0;
  border-top:3px solid var(--che-primary);
  border-radius:14px;
  box-shadow:0 8px 30px rgba(32,49,92,.07);
}

.pdca-step h2{
  font-size:25px;
  font-weight:700;
}

.pdca-step p{
  color:#69738b;
  font-size:15px;
  line-height:1.55;
  font-weight:400;
}

.pdca-plan{border-top-color:var(--che-quaternary)}
.pdca-do{border-top-color:var(--che-tertiary)}
.pdca-check{border-top-color:var(--che-secondary)}
.pdca-act{border-top-color:var(--che-accent)}

.pdca-notes,
.context-block,
.cycle-agenda,
.source-panel{
  padding:36px;
  border:0;
  border-radius:18px;
  background:#f6f7f9;
}

.pdca-notes h2,
.context-block h2,
.cycle-agenda h2,
.source-panel h2{
  margin-bottom:18px;
  font-size:25px;
  line-height:1.2;
  font-weight:700;
}

.pdca-notes p,
.context-block p,
.cycle-agenda p,
.source-panel p{
  color:#59637a;
  font-size:15px;
  line-height:1.7;
  font-weight:400;
}

.pdca-notes ul{
  gap:15px;
  margin-top:24px;
}

.pdca-notes li{
  padding-left:19px;
  color:#59637a;
  font-size:14px;
  line-height:1.55;
  font-weight:450;
}

.pdca-notes li::before{
  top:.55em;
  width:6px;
  height:6px;
}

.context-grid{
  gap:44px;
  margin:0 0 112px;
}

.context-block,
.context-block:nth-child(1),
.context-block:nth-child(2),
.context-block:nth-child(3){
  padding:28px 0 0;
  border-top:3px solid var(--che-soft-blue);
  border-radius:0;
  background:transparent;
}

.context-block:nth-child(2){border-top-color:#a9d6b8}
.context-block:nth-child(3){border-top-color:#dbafb8}

.cycle-agenda{
  margin-bottom:72px;
  padding:64px 0 0;
  border-top:1px solid var(--che-soft-gray);
  border-radius:0;
  background:transparent;
}

.agenda-grid{
  gap:24px;
  margin-top:32px;
}

.agenda-grid article,
.agenda-grid article:nth-child(1),
.agenda-grid article:nth-child(2),
.agenda-grid article:nth-child(3),
.agenda-grid article:nth-child(4){
  padding:24px;
  border:0;
  border-top:3px solid var(--che-primary);
  border-radius:12px;
  background:#f6f7f9;
}

.agenda-grid article:nth-child(1){border-top-color:var(--che-quaternary)}
.agenda-grid article:nth-child(2){border-top-color:var(--che-accent)}
.agenda-grid article:nth-child(3){border-top-color:var(--che-tertiary)}
.agenda-grid article:nth-child(4){border-top-color:var(--che-secondary)}

.agenda-grid span{
  font:650 12px/1.2 "DM Sans","Segoe UI",Arial,sans-serif;
  letter-spacing:.06em;
}

.agenda-grid strong{
  margin-top:10px;
  font:700 18px/1.2 "DM Sans","Segoe UI",Arial,sans-serif;
}

.agenda-grid p{
  margin-top:12px;
  font-size:14px;
  line-height:1.55;
}

.source-panel{
  padding:32px 36px;
}

.source-panel ul{
  gap:8px 24px;
  margin-top:20px;
}

.source-panel a{
  padding:5px 0;
  border:0;
  border-radius:0;
  text-decoration:underline;
  text-decoration-color:#bdc4d0;
  text-underline-offset:4px;
  font:500 14px/1.4 "DM Sans","Segoe UI",Arial,sans-serif;
}

.source-panel a:hover{
  color:var(--che-tertiary);
  text-decoration-color:var(--che-tertiary);
}

@media(max-width:1860px){
  .policy-map{
    transform:scale(.74);
  }

  .panel.map-panel{
    height:726px;
  }
}

@media(max-width:1400px){
  .relation-layout{
    grid-template-columns:1fr;
  }

  .detail{
    position:relative;
    top:0;
    min-height:0;
    max-height:none;
  }
}

@media(max-width:1700px){
  .policy-map{
    transform:scale(.74);
  }

  .panel.map-panel{
    height:726px;
  }
}

@media(max-width:1500px){
  .policy-map{
    transform:scale(.74);
  }

  .panel.map-panel{
    height:726px;
  }

  .relation-map{
    transform:none;
    transform-origin:top left;
  }

  .panel.relation-panel{
    height:760px;
  }
}

@media(max-width:1400px){
  .policy-map{
    transform:scale(.72);
  }

  .panel.map-panel{
    height:706px;
  }
}

@media(max-width:980px){
  .site-header__inner{
    grid-template-columns:auto minmax(0,1fr);
    gap:12px 18px;
  }

  .site-brand{
    min-width:0;
  }

  .site-header__title{
    grid-column:2;
  }

  .nav{
    grid-column:1 / -1;
    justify-content:flex-start;
  }
}

@media(max-width:1280px){
  .cycle-intro,
  .pdca-section{
    grid-template-columns:1fr;
  }

  .cycle-flow{
    grid-template-columns:1fr;
    gap:0;
  }

  .flow-connector{
    min-height:54px;
  }

  .flow-connector::before{
    top:7px;
    bottom:7px;
    left:50%;
    right:auto;
    width:6px;
    height:auto;
    transform:translateX(-50%);
  }

  .flow-connector::after{
    top:auto;
    right:auto;
    bottom:6px;
    left:50%;
    border-top:0;
    border-left:0;
    border-right:6px solid var(--che-primary);
    border-bottom:6px solid var(--che-primary);
    transform:translateX(-50%) rotate(45deg);
  }

  .context-grid{
    grid-template-columns:1fr;
  }

  .agenda-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .relation-layout{
    grid-template-columns:1fr;
  }

  .detail{
    position:relative;
    top:0;
    max-height:none;
  }

  .policy-map{
    transform:scale(.68);
  }

  .panel.map-panel{
    height:666px;
  }

  .relation-map{
    transform:none;
    transform-origin:top left;
  }

  .panel.relation-panel{
    height:760px;
  }
}

@media(max-width:1160px){
  .policy-map{
    transform:scale(.6);
  }

  .panel.map-panel{
    height:588px;
  }

  .relation-map{
    transform:scale(.9);
    transform-origin:top left;
  }

  .panel.relation-panel{
    height:684px;
  }
}

@media(max-width:980px){
  .policy-map{
    transform:scale(.5);
  }

  .panel.map-panel{
    height:490px;
  }

  .relation-map{
    transform:scale(.9);
    transform-origin:top left;
  }

  .panel.relation-panel{
    height:684px;
  }
}

@media(max-width:760px){
  .site-header{
    padding:13px 18px 12px;
  }

  .cycle-intro h2{
    font-size:2rem;
  }

  .cycle-intro p{
    font-size:17px;
  }

  .cycle-summary dt{
    font-size:24px;
  }

  .flow-stage,
  .pdca-notes,
  .context-block,
  .cycle-agenda,
  .source-panel{
    padding:18px;
  }

  .flow-stage h2,
  .pdca-notes h2,
  .context-block h2,
  .cycle-agenda h2,
  .source-panel h2{
    font-size:24px;
  }

  .pdca-wheel{
    display:grid;
    gap:12px;
    min-height:0;
    padding:16px;
  }

  .pdca-core,
  .pdca-step{
    position:static;
    width:auto;
    min-height:0;
    transform:none;
  }

  .pdca-core{
    width:auto;
    height:auto;
    border-radius:8px;
    padding:18px;
  }

  .pdca-step{
    padding:16px;
  }

  .pdca-step h2{
    font-size:24px;
  }

  .agenda-grid{
    grid-template-columns:1fr;
  }

  .source-panel ul{
    display:grid;
    grid-template-columns:1fr;
  }

  .source-panel a{
    justify-content:center;
    text-align:center;
  }

  .site-header__inner{
    grid-template-columns:1fr;
    gap:10px;
  }

  .site-brand,
  .site-header__title,
  .nav{
    grid-column:1;
  }

  .site-brand__image{
    width:190px;
  }

  .site-header p{
    font-size:14px;
  }

  .page{
    padding:16px 18px 46px;
  }

  .policy-map{
    transform:scale(.38);
  }

  .panel.map-panel{
    height:372px;
  }

  .relation-map{
    transform:scale(.75);
  }

  .panel.relation-panel{
    height:570px;
  }

  .layer-summary{
    grid-template-columns:1fr;
  }

  .full-text{
    padding:18px;
  }
}

@media(max-width:560px){
  .policy-map{
    transform:scale(.29);
  }

  .panel.map-panel{
    height:284px;
  }

  .relation-map{
    transform:scale(.54);
  }

  .panel.relation-panel{
    height:411px;
  }
}

@media(max-width:420px){
  .policy-map{
    transform:scale(.2);
  }

  .panel.map-panel{
    height:196px;
  }

  .relation-map{
    transform:scale(.4);
  }

  .panel.relation-panel{
    height:304px;
  }
}

@media print{
  .site-header,
  .filter,
  .detail,
  .relation-overview,
  .relation-table-wrap{
    display:none;
  }

  .page{padding:0}
  .panel,
  .full-text{box-shadow:none}
  .policy-map{
    transform:scale(.66);
    transform-origin:top left;
  }
}

/* Relationele jaarplaat op de pagina Cyclus */
.page-cycle-network{
  max-width:1500px;
}

.cycle-filter{
  align-items:center;
  margin-bottom:56px;
}

.cycle-filter button:nth-child(2){border-color:var(--che-quaternary)}
.cycle-filter button:nth-child(3){border-color:var(--che-accent)}
.cycle-filter button:nth-child(4){border-color:var(--che-secondary)}
.cycle-filter button:nth-child(5){border-color:var(--che-primary-deep)}
.cycle-filter button:nth-child(6){border-color:var(--che-tertiary)}

.cycle-filter button.active,
.cycle-filter button:hover{
  border-color:var(--che-primary);
}

.cycle-network-panel{
  height:980px;
  overflow:hidden;
}

.cycle-network{
  position:relative;
  width:1760px;
  height:980px;
  overflow:hidden;
  transform-origin:top left;
  border:3px solid var(--che-primary);
  border-radius:12px;
  background:
    linear-gradient(90deg,rgba(32,49,92,.035) 1px,transparent 1px),
    linear-gradient(rgba(32,49,92,.035) 1px,transparent 1px),
    #fff;
  background-size:28px 28px;
  color:var(--che-primary);
}

.cycle-network::after{
  content:"";
  position:absolute;
  z-index:0;
  right:-120px;
  top:-160px;
  width:480px;
  height:480px;
  border:80px solid rgba(57,147,86,.055);
  border-radius:50%;
}

.cycle-network__title{
  position:absolute;
  z-index:5;
  top:23px;
  left:34px;
  display:flex;
  align-items:baseline;
  gap:16px;
}

.cycle-network__title span{
  font:950 24px/1 var(--font-map);
}

.cycle-network__title strong{
  color:var(--muted);
  font:800 14px/1.2 var(--font-map);
}

.cycle-horizon{
  position:absolute;
  z-index:4;
  left:26px;
  padding:5px 10px 4px;
  border-radius:999px;
  color:#fff;
  font:950 11px/1 var(--font-map);
  letter-spacing:.1em;
  text-transform:uppercase;
}

.cycle-horizon--long{top:92px;background:var(--che-quaternary)}
.cycle-horizon--year{top:457px;background:var(--che-secondary)}
.cycle-horizon--continuous{top:805px;background:var(--che-tertiary)}

.cycle-period{
  position:absolute;
  z-index:0;
  top:476px;
  width:410px;
  height:341px;
  border-top:2px solid rgba(170,51,77,.2);
  border-bottom:2px solid rgba(170,51,77,.12);
  background:rgba(246,234,237,.35);
}

.cycle-period--1{left:155px}
.cycle-period--2{left:675px}
.cycle-period--3{left:1195px}

.cycle-period span{
  position:absolute;
  top:11px;
  right:14px;
  color:rgba(170,51,77,.75);
  font:950 11px/1 var(--font-map);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cycle-connections{
  position:absolute;
  z-index:1;
  inset:0;
  width:1760px;
  height:980px;
  overflow:visible;
  pointer-events:none;
}

.cycle-edge{
  fill:none;
  stroke-width:6;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.82;
  transition:opacity .22s ease,filter .22s ease,stroke-width .22s ease;
}

.cycle-edge--thin{stroke-width:4}
.cycle-edge--learning{stroke-dasharray:11 12;stroke-width:5}
.cycle-edge.stream-koers{stroke:var(--che-quaternary)}
.cycle-edge.stream-jaarsturing{stroke:var(--che-accent)}
.cycle-edge.stream-voortgang{stroke:var(--che-secondary)}
.cycle-edge.stream-kwaliteit{stroke:var(--che-primary-deep)}
.cycle-edge.stream-leren{stroke:var(--che-tertiary)}
.cycle-edge--active{stroke-width:9;opacity:1;filter:drop-shadow(0 0 6px rgba(32,49,92,.2))}

.cycle-node{
  position:absolute;
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  margin:0;
  padding:18px 22px;
  border:4px solid var(--node-color,var(--che-primary));
  border-radius:10px;
  background:var(--node-pale,#fff);
  color:var(--che-primary);
  text-align:left;
  cursor:pointer;
  box-shadow:7px 7px 0 rgba(32,49,92,.08);
  transition:opacity .22s ease,transform .18s ease,box-shadow .18s ease,filter .22s ease;
}

.cycle-node:hover{
  transform:translateY(-3px);
  box-shadow:8px 11px 0 rgba(32,49,92,.11);
}

.cycle-node > span:first-child,
.cycle-quality__intro > span:first-child{
  color:var(--node-color,var(--che-primary));
  font:950 11px/1 var(--font-map);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cycle-node > strong,
.cycle-quality__intro > strong{
  display:block;
  margin-top:7px;
  font:950 27px/.95 var(--font-map);
}

.cycle-node > small,
.cycle-quality__intro > small{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font:800 13px/1.25 var(--font-map);
}

.cycle-node--institution{
  --node-color:var(--che-quaternary);
  --node-pale:var(--pale-blue);
  top:105px;
  left:680px;
  width:400px;
  height:100px;
  align-items:center;
  text-align:center;
}

.cycle-node--domains{
  --node-color:var(--che-tertiary);
  --node-pale:var(--pale-green);
  top:245px;
  left:120px;
  width:465px;
  height:145px;
}

.cycle-node--framework{
  --node-color:var(--che-accent);
  --node-pale:var(--pale-orange);
  top:245px;
  left:1175px;
  width:385px;
  height:145px;
}

.cycle-node--yearplan{
  --node-color:var(--che-primary);
  --node-pale:var(--che-primary);
  top:245px;
  left:660px;
  width:440px;
  height:150px;
  align-items:center;
  color:#fff;
  text-align:center;
  box-shadow:9px 9px 0 rgba(32,49,92,.18);
}

.cycle-node--yearplan > span:first-child,
.cycle-node--yearplan > small{
  color:#fff;
}

.cycle-node__tags{
  display:flex;
  gap:6px;
  margin-top:10px;
}

.cycle-node__tags b{
  padding:4px 8px 3px;
  border:1px solid rgba(57,147,86,.35);
  border-radius:999px;
  background:#fff;
  font:900 10px/1 var(--font-map);
}

.cycle-node--t{
  --node-color:var(--che-secondary);
  --node-pale:var(--pale-magenta);
  top:503px;
  width:340px;
  height:110px;
  padding-left:108px;
}

.cycle-node--t > strong{
  position:absolute;
  left:22px;
  top:19px;
  margin:0;
  color:var(--che-secondary);
  font-size:44px;
}

.cycle-node--t1{left:190px}
.cycle-node--t2{left:710px}
.cycle-node--t3{left:1230px}

.cycle-node--quality{
  --node-color:var(--che-primary-deep);
  --node-pale:var(--pale-blue-2);
  top:690px;
  left:190px;
  display:grid;
  grid-template-columns:350px 1fr;
  width:1380px;
  height:105px;
  padding:15px 24px;
}

.cycle-quality__intro{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.cycle-quality__intro > strong{
  font-size:25px;
}

.cycle-quality__intro > small{
  margin-top:5px;
  max-width:330px;
  font-size:11px;
}

.cycle-quality__steps{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-left:20px;
  border-left:2px solid rgba(31,64,117,.18);
}

.cycle-quality__steps b{
  flex:0 1 190px;
  padding:11px 12px 10px;
  border:2px solid rgba(31,64,117,.35);
  border-radius:999px;
  background:#fff;
  text-align:center;
  font:950 12px/1 var(--font-map);
}

.cycle-quality__steps i{
  flex:1 1 50px;
  height:3px;
  background:var(--che-primary-deep);
}

.cycle-node--strategic{
  --node-color:var(--che-tertiary);
  --node-pale:#f4f9f5;
  top:805px;
  left:190px;
  display:grid;
  grid-template-columns:370px 1fr;
  align-items:center;
  width:1380px;
  height:80px;
  padding:11px 24px;
}

.cycle-strategic__intro{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.cycle-strategic__intro > span:first-child{
  color:var(--che-tertiary);
  font:950 10px/1 var(--font-map);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cycle-strategic__intro > strong{
  display:block;
  margin-top:5px;
  font:950 24px/.95 var(--font-map);
}

.cycle-strategic__intro > small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font:800 11px/1.2 var(--font-map);
  text-transform:none;
  white-space:nowrap;
}

.cycle-strategic__themes{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding-left:22px;
  border-left:2px solid rgba(57,147,86,.22);
}

.cycle-strategic__themes b{
  display:flex;
  min-height:38px;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border:2px solid rgba(57,147,86,.34);
  border-radius:8px;
  background:#fff;
  text-align:center;
  font:950 11px/1.15 var(--font-map);
}

.cycle-node--explorations{
  --node-color:var(--che-tertiary);
  --node-pale:var(--pale-green);
  top:905px;
  left:190px;
  display:grid;
  grid-template-columns:180px 220px 1fr;
  align-items:center;
  width:1380px;
  height:60px;
  padding:8px 24px;
  border-style:dashed;
}

.cycle-node--explorations > span:first-child{
  padding-right:20px;
}

.cycle-node--explorations > strong{
  margin:0;
  padding-left:20px;
  border-left:2px solid rgba(57,147,86,.25);
  font-size:24px;
}

.cycle-node--explorations > small{
  margin:0;
  padding-left:22px;
  font-size:12px;
}

.cycle-relation-label{
  position:absolute;
  z-index:2;
  padding:4px 8px 3px;
  border:1px solid var(--che-soft-gray);
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font:900 10px/1 var(--font-map);
  white-space:nowrap;
  transition:opacity .22s ease;
}

.label-inst-knowledge{top:196px;left:474px}
.label-inst-kader{top:196px;left:1120px}
.label-inst-year{top:212px;left:898px}
.label-knowledge-year{top:293px;left:590px}
.label-kader-year{top:293px;left:1082px}
.label-year-t{top:431px;left:781px}
.label-t-q{top:646px;left:1325px}
.label-q-loop{top:506px;left:1568px;transform:rotate(-90deg)}
.label-learn-loop{top:548px;left:16px;transform:rotate(-90deg)}
.label-explore-agenda{top:885px;left:822px}

.cycle-map-hint{
  position:absolute;
  z-index:4;
  top:28px;
  right:34px;
  display:flex;
  gap:10px;
  align-items:center;
  color:var(--muted);
  font:800 11px/1 var(--font-map);
}

.cycle-map-hint span{
  color:var(--che-tertiary);
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cycle-selected{
  transform:translateY(-3px);
  box-shadow:0 0 0 7px rgba(32,49,92,.13),9px 12px 0 rgba(32,49,92,.12);
}

.cycle-connected{
  box-shadow:0 0 0 5px rgba(32,49,92,.08),7px 9px 0 rgba(32,49,92,.08);
}

.cycle-node.cycle-dim,
.cycle-relation-label.cycle-dim{
  opacity:.13;
  filter:grayscale(.7);
}

.cycle-edge.cycle-dim{
  opacity:.055;
}

.cycle-reading{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,2fr);
  gap:52px;
  margin-top:52px;
  padding-top:42px;
  border-top:1px solid var(--che-soft-gray);
}

.cycle-reading__intro h2,
.cycle-relations-copy h2{
  margin:8px 0 14px;
  color:var(--che-primary);
  font:950 34px/1.05 var(--font-map);
}

.cycle-reading__intro p,
.cycle-relations-copy p{
  margin:0;
  color:#59637a;
  font-size:15px;
  line-height:1.65;
}

.cycle-rhythms{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.cycle-rhythms article{
  min-height:180px;
  padding:24px;
  border-top:4px solid var(--che-quaternary);
  border-radius:10px;
  background:#f6f7f9;
}

.cycle-rhythms article:nth-child(2){border-top-color:var(--che-secondary)}
.cycle-rhythms article:nth-child(3){border-top-color:var(--che-tertiary)}

.cycle-rhythms span{
  display:block;
  color:#a0a7b6;
  font:950 12px/1 var(--font-map);
}

.cycle-rhythms strong{
  display:block;
  margin-top:24px;
  font:950 22px/1 var(--font-map);
}

.cycle-rhythms p{
  margin:11px 0 0;
  color:#59637a;
  font-size:14px;
  line-height:1.55;
}

.cycle-relations-copy{
  margin-top:72px;
  padding:40px 0 18px;
  border-top:1px solid var(--che-soft-gray);
}

.cycle-relations-copy > div{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:36px;
  margin-top:28px;
}

.cycle-relations-copy p{
  padding-left:20px;
  border-left:3px solid var(--che-soft-blue);
}

.cycle-relations-copy p:nth-child(2){border-left-color:#dbafb8}
.cycle-relations-copy p:nth-child(3){border-left-color:#a9d6b8}
.cycle-relations-copy p:nth-child(4){border-left-color:#9ec5df}
.cycle-relations-copy strong{color:var(--che-primary)}

@media(max-width:1500px){
  .cycle-network{transform:scale(.78)}
  .cycle-network-panel{height:765px}
}

@media(max-width:1200px){
  .cycle-network{transform:scale(.62)}
  .cycle-network-panel{height:608px}
  .cycle-reading{grid-template-columns:1fr}
  .cycle-relations-copy > div{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:920px){
  .cycle-network{transform:scale(.48)}
  .cycle-network-panel{height:471px}
  .cycle-rhythms,
  .cycle-relations-copy > div{grid-template-columns:1fr}
}

@media(max-width:680px){
  .cycle-network{transform:scale(.34)}
  .cycle-network-panel{height:334px}
  .cycle-filter{gap:6px}
  .cycle-filter button{padding:7px 10px 6px;font-size:13px}
  .cycle-reading{margin-top:36px;padding-top:30px}
  .cycle-reading__intro h2,
  .cycle-relations-copy h2{font-size:28px}
}

@media(max-width:480px){
  .cycle-network{transform:scale(.24)}
  .cycle-network-panel{height:236px}
}

@media print{
  .cycle-reading,
  .cycle-relations-copy{display:none}
  .cycle-network{transform:scale(.58)}
  .cycle-network-panel{height:570px}
}

/* Vereenvoudigde cycluskaart in de visuele taal van de indexpagina */
.cycle-network{
  width:1800px;
  height:980px;
  border:0;
  border-radius:0;
  background:linear-gradient(145deg,#fff 0%,#f8fafc 100%);
  transform:scale(.74);
  transform-origin:top left;
}

.cycle-network-panel{
  height:726px;
  border:1px solid #eef0f4;
}

.cycle-network::after,
.cycle-period{
  display:none;
}

.cycle-edge{
  stroke-width:24px;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.68;
}

.cycle-edge--active{
  stroke-width:30px;
  opacity:.88;
  filter:drop-shadow(0 0 6px rgba(32,49,92,.18));
}

.cycle-terminal{
  fill:#fff;
  stroke-width:6px;
  opacity:1;
  transition:opacity .22s ease,stroke-width .22s ease,filter .22s ease;
}

.cycle-terminal.stream-koers{stroke:var(--che-quaternary)}
.cycle-terminal.stream-jaarsturing{stroke:var(--che-accent)}
.cycle-terminal.stream-voortgang{stroke:var(--che-secondary)}
.cycle-terminal.stream-kwaliteit{stroke:var(--che-primary-deep)}
.cycle-terminal.stream-leren{stroke:var(--che-tertiary)}

.cycle-terminal--active{
  stroke-width:9px;
  filter:drop-shadow(0 0 5px rgba(32,49,92,.2));
}

.cycle-terminal.cycle-dim{
  opacity:.08;
}

.cycle-horizon{
  left:24px;
  min-width:160px;
  padding:8px 12px 7px;
  border:3px solid var(--lane-color);
  border-radius:10px;
  background:#fff !important;
  color:var(--che-primary);
  text-align:center;
  font-size:12px;
}

.cycle-horizon--continuous{top:62px;--lane-color:var(--che-tertiary)}
.cycle-horizon--long{top:302px;--lane-color:var(--che-quaternary)}
.cycle-horizon--year{top:556px;--lane-color:var(--che-secondary)}
.cycle-horizon--quality{top:736px;--lane-color:var(--che-primary-deep)}

.cycle-node{
  border-width:5px;
  border-radius:12px;
  background:#fff;
  box-shadow:none;
  align-items:flex-start;
  justify-content:flex-start;
  padding:16px 18px;
  text-align:left;
}

.cycle-node > span:first-child{
  font-size:10px;
  line-height:1;
}

.cycle-node > strong{
  margin-top:6px;
  font-size:22px;
  line-height:1.02;
}

.cycle-node > small{
  margin-top:7px;
  font-size:11px;
  line-height:1.28;
}

.cycle-node--explorations{
  top:100px;
  left:70px;
  display:flex;
  width:350px;
  height:100px;
  padding:16px 22px;
  border-style:solid;
}

.cycle-node--explorations > span:first-child,
.cycle-node--explorations > strong,
.cycle-node--explorations > small{
  margin:0;
  padding:0;
  border:0;
}

.cycle-node--explorations > strong{
  margin-top:7px;
  font-size:27px;
}

.cycle-node--explorations > small{
  margin-top:7px;
  font-size:11px;
  line-height:1.2;
}

.cycle-node--strategic{
  top:80px;
  left:500px;
  grid-template-columns:230px 1fr;
  width:540px;
  height:140px;
  padding:16px 20px;
}

.cycle-strategic__intro > strong{font-size:25px}
.cycle-strategic__intro > small{
  max-width:210px;
  white-space:normal;
}

.cycle-strategic__themes{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding-left:18px;
}

.cycle-strategic__themes b{
  min-height:38px;
  padding:6px 8px;
  border-width:3px;
  border-radius:10px;
  font-size:10px;
}

.cycle-node--institution{
  top:100px;
  left:1200px;
  width:390px;
  height:100px;
}

.cycle-node--domains{
  top:330px;
  left:100px;
  width:450px;
  height:150px;
}

.cycle-node--yearplan{
  top:330px;
  left:655px;
  width:450px;
  height:150px;
  background:var(--che-primary);
}

.cycle-node--framework{
  top:330px;
  left:1210px;
  width:370px;
  height:150px;
}

.cycle-node--t{
  top:590px;
  width:360px;
  height:120px;
  padding-left:112px;
}

.cycle-node--t1{left:170px}
.cycle-node--t2{left:700px}
.cycle-node--t3{left:1230px}

.cycle-node--t > strong{
  left:24px;
  top:26px;
  font-size:46px;
}

.cycle-node--quality{
  top:770px;
  left:170px;
  grid-template-columns:350px 1fr;
  grid-template-rows:78px 38px;
  width:1420px;
  height:145px;
  padding:12px 24px;
  background:#fff;
}

.cycle-quality__steps b{
  border-width:3px;
}

.cycle-quality__feedback{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin-top:5px;
  padding-top:7px;
  border-top:2px solid rgba(31,64,117,.18);
  color:var(--che-primary-deep);
  font:900 11px/1 var(--font-map);
}

.cycle-quality__feedback b{
  font-size:19px;
  line-height:1;
}

.cycle-relation-label{
  padding:5px 9px 4px;
  border:2px solid var(--che-soft-gray);
  border-radius:999px;
  font-size:11px;
}

.label-explore-agenda{top:129px;left:425px}
.label-agenda-plan{top:129px;left:1060px}
.label-agenda-domains{top:268px;left:450px}
.label-inst-kader{top:250px;left:1350px;transform:rotate(-90deg)}
.label-knowledge-year{top:385px;left:555px}
.label-kader-year{top:385px;left:1085px}
.label-year-t{top:520px;left:555px}
.label-t-q{top:735px;left:1215px}

.cycle-map-hint{
  top:auto;
  right:auto;
  bottom:20px;
  left:64px;
}

.cycle-network__title{
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.cycle-node:hover{
  transform:none;
  box-shadow:0 0 0 4px rgba(32,49,92,.09);
}

.cycle-selected{
  transform:none;
  box-shadow:0 0 0 6px rgba(32,49,92,.13);
}

.cycle-connected{
  box-shadow:0 0 0 4px rgba(32,49,92,.08);
}

.cycle-full-text{
  margin-top:72px;
}

.cycle-full-text p{
  max-width:1380px;
}

.cycle-full-text strong{
  color:var(--che-primary);
  font-weight:950;
}

.cycle-table-scroll{
  overflow-x:auto;
}

.cycle-full-text table{
  min-width:980px;
}

.cycle-full-text th:nth-child(1),
.cycle-full-text td:nth-child(1),
.cycle-full-text th:nth-child(3),
.cycle-full-text td:nth-child(3){
  width:20%;
  font-weight:850;
}

.cycle-full-text th:nth-child(2),
.cycle-full-text td:nth-child(2){
  width:19%;
}

.cycle-full-text tbody tr:hover{
  background:var(--pale-blue);
}

@media(max-width:760px){
  .cycle-full-text{margin-top:40px}
}

@media(max-width:1400px){
  .cycle-network{transform:scale(.72)}
  .cycle-network-panel{height:706px}
}

@media(max-width:1280px){
  .cycle-network{transform:scale(.68)}
  .cycle-network-panel{height:666px}
}

@media(max-width:1160px){
  .cycle-network{transform:scale(.6)}
  .cycle-network-panel{height:588px}
}

@media(max-width:980px){
  .cycle-network{transform:scale(.5)}
  .cycle-network-panel{height:490px}
}

@media(max-width:760px){
  .cycle-network{transform:scale(.38)}
  .cycle-network-panel{height:372px}
}

@media(max-width:560px){
  .cycle-network{transform:scale(.29)}
  .cycle-network-panel{height:284px}
}

@media(max-width:420px){
  .cycle-network{transform:scale(.2)}
  .cycle-network-panel{height:196px}
}

@media print{
  .cycle-full-text{display:block}
  .cycle-table-scroll{overflow:visible}
  .cycle-network{transform:scale(.66)}
  .cycle-network-panel{height:647px}
}

/* Circulaire hoofdstructuur: startlijn naar een gesloten beleids- en kwaliteitscyclus. */
.cycle-network::after{
  display:none;
}

.cycle-horizon,
.cycle-relation-label{
  display:none;
}

.cycle-core{
  position:absolute;
  z-index:2;
  left:1060px;
  top:370px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:260px;
  height:260px;
  padding:34px;
  border-radius:50%;
  background:var(--che-primary);
  color:#fff;
  text-align:center;
}

.cycle-start-caption{
  position:absolute;
  z-index:4;
  top:10px;
  left:40px;
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--che-primary);
  font:900 12px/1 var(--font-map);
}

.cycle-start-caption span{
  color:var(--che-tertiary);
  letter-spacing:.1em;
  text-transform:uppercase;
}

.cycle-start-caption strong{
  font-weight:900;
}

.cycle-core span{
  color:#a9d6b8;
  font:950 13px/1 var(--font-map);
  letter-spacing:.12em;
}

.cycle-core strong{
  margin-top:10px;
  font:950 28px/1.02 var(--font-map);
}

.cycle-core small{
  margin-top:14px;
  color:#fff;
  font:800 13px/1.35 var(--font-map);
  letter-spacing:.03em;
}

.cycle-node[data-step]::before{
  content:attr(data-step);
  position:absolute;
  z-index:5;
  top:-18px;
  left:-26px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:5px solid #fff;
  border-radius:50%;
  background:var(--node-color,var(--che-primary));
  color:#fff;
  font:950 15px/1 var(--font-map);
  box-shadow:none;
}

.cycle-node[data-continuous]::before{
  content:"∞";
  position:absolute;
  z-index:5;
  top:-18px;
  left:-26px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:5px solid #fff;
  border-radius:50%;
  background:var(--che-tertiary);
  color:#fff;
  font:950 20px/1 var(--font-map);
}

.cycle-node--institution{
  top:125px;
  left:330px;
  width:300px;
  height:110px;
}

.cycle-node--framework{
  top:147px;
  left:777px;
  width:240px;
  height:100px;
}

.cycle-node--yearplan{
  top:25px;
  left:1040px;
  width:280px;
  height:110px;
  background:#fff;
  color:var(--che-primary);
  align-items:flex-start;
  text-align:left;
}

.cycle-node--yearplan > span:first-child,
.cycle-node--yearplan > small{
  color:var(--che-primary);
}

.cycle-node--domains{
  --node-color:var(--che-quaternary);
  top:132px;
  left:1323px;
  width:280px;
  height:130px;
}

.cycle-node--t{
  width:300px;
  height:100px;
  padding:16px 18px 16px 82px;
}

.cycle-node--t1{top:326px;left:1456px;width:220px}
.cycle-node--t2{top:534px;left:1456px;width:220px}
.cycle-node--t3{top:713px;left:1353px;width:220px}

.cycle-node--t > strong{
  left:24px;
  top:24px;
  font-size:42px;
}

.cycle-node--quality{
  top:825px;
  left:1015px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  width:330px;
  height:110px;
  padding:17px 24px;
  background:#fff;
}

.cycle-node--quality > strong{
  margin-top:6px;
  font-size:25px;
}

.cycle-node--quality > small{
  margin-top:7px;
  font-size:11px;
}

.cycle-node--explorations{
  top:730px;
  left:330px;
  width:300px;
  height:100px;
}

.cycle-node--strategic{
  top:410px;
  left:30px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  width:300px;
  height:150px;
  padding:18px 22px;
}

.cycle-node--strategic > strong{
  margin-top:7px;
  font-size:25px;
}

.cycle-node--strategic > small{
  margin-top:9px;
  font-size:11px;
  line-height:1.25;
}

.cycle-map-hint{
  left:70px;
}

.cycle-continuous-caption{
  position:absolute;
  z-index:4;
  top:370px;
  left:370px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:220px;
  height:220px;
  padding:30px;
  border:5px solid var(--che-tertiary);
  border-radius:50%;
  background:var(--pale-green);
  text-align:center;
  font:900 12px/1.2 var(--font-map);
}

.cycle-continuous-caption span{
  color:var(--che-tertiary);
  letter-spacing:.1em;
  text-transform:uppercase;
}

.cycle-continuous-caption strong{
  margin-top:10px;
  color:var(--che-primary);
  font:950 22px/1.05 var(--font-map);
}

.cycle-relation-label{
  display:block;
  z-index:5;
  border-color:#dfe3ea;
  background:#fff;
  font-size:10px;
}

.label-kader-year{top:155px;left:1025px;transform:none}
.label-year-plans{top:280px;left:1240px;transform:none}
.label-plans-t1{top:300px;left:1400px;transform:none}
.label-t1-t2{top:455px;left:1395px;transform:none}
.label-t2-t3{top:650px;left:1350px;transform:none}
.label-t3-q{top:785px;left:1220px;transform:none}
.label-q-kader{top:600px;left:860px;transform:none}
.label-q-verken{top:630px;left:575px;transform:none}
.label-verken-agenda{top:620px;left:210px;transform:none}
.label-agenda-plan{top:315px;left:215px;transform:none}
.label-plan-kader{top:315px;left:560px;transform:none}

.cycle-touch{
  fill:#fff;
  stroke:var(--che-primary);
  stroke-width:8px;
}

.cycle-touch--inner{
  stroke:var(--che-tertiary);
  stroke-width:7px;
}

.cycle-touch-label{
  position:absolute;
  z-index:5;
  top:506px;
  left:685px;
  padding:5px 9px 4px;
  border:2px solid #dfe3ea;
  border-radius:999px;
  background:#fff;
  color:var(--che-primary);
  font:900 10px/1 var(--font-map);
}

/* Tekst passend houden zonder badges of lijnknooppunten af te snijden. */
.cycle-node > span:first-child,
.cycle-node > strong,
.cycle-node > small{
  max-width:100%;
  overflow-wrap:break-word;
  word-break:normal;
}

.cycle-node--institution{
  top:722px;
  height:120px;
  padding:14px 18px;
}

.cycle-node--institution > strong{font-size:21px}
.cycle-node--institution > small{font-size:9.5px;line-height:1.18}

.cycle-node--framework{
  top:142px;
  height:110px;
  padding:13px 16px;
}

.cycle-node--framework > strong{font-size:21px}
.cycle-node--framework > small{font-size:9.5px;line-height:1.18}

.cycle-node--yearplan{
  top:20px;
  height:120px;
  padding:13px 16px;
}

.cycle-node--yearplan > strong{font-size:21px}
.cycle-node--yearplan > small{font-size:9.5px;line-height:1.18}

.cycle-node--domains{
  top:122px;
  height:150px;
  padding:12px 15px;
}

.cycle-node--domains > span:first-child{font-size:9px}
.cycle-node--domains > strong{margin-top:5px;font-size:19px;line-height:.98}
.cycle-node--domains > small{margin-top:6px;font-size:9.5px;line-height:1.17}

.cycle-node--strategic{
  padding:15px 18px;
}

.cycle-node--strategic > strong{font-size:21px;line-height:1}
.cycle-node--strategic > small{font-size:9.5px;line-height:1.18}

.cycle-node--explorations{
  top:122px;
  height:116px;
  padding:13px 16px;
}

.cycle-node--explorations > strong{font-size:21px}
.cycle-node--explorations > small{font-size:9.5px;line-height:1.17}

.cycle-node--quality{
  top:820px;
  height:120px;
  padding:14px 20px;
}

.cycle-node--quality > strong{font-size:21px}
.cycle-node--quality > small{font-size:9.5px;line-height:1.18}

.cycle-node--t > strong{font-size:39px}
.cycle-node--t > span:first-child{font-size:9px;line-height:1.05}
.cycle-node--t > small{font-size:9px;line-height:1.16}

/* Cyclus in hetzelfde kaart-detailstramien als de pagina Relaties. */
.cycle-layout{
  grid-template-columns:960px minmax(320px,1fr);
  gap:32px;
  align-items:start;
}

.cycle-layout .cycle-network-panel{
  width:100%;
  height:523px;
}

.cycle-layout .detail{
  min-height:523px;
}

.cycle-layout .cycle-network{
  transform:scale(.533333);
}

.cycle-node.cycle-connected{
  z-index:9;
  opacity:1;
  filter:none;
  background:color-mix(in srgb,var(--node-color) 8%,#fff);
  box-shadow:
    0 0 0 6px color-mix(in srgb,var(--node-color) 22%,transparent),
    0 9px 20px rgba(32,49,92,.13);
}

.cycle-node.cycle-selected{
  z-index:10;
}

.cycle-edge--direct{
  stroke-width:11px;
  stroke-dasharray:18 12;
  opacity:.9;
}

.cycle-edge--direct.cycle-edge--active{
  stroke-width:15px;
  opacity:1;
}

.label-verken-kader{
  top:92px;
  left:610px;
  transform:none;
}

@media(max-width:1500px){
  .cycle-layout{
    grid-template-columns:1fr;
  }

  .cycle-layout .detail{
    min-height:0;
  }
}

@media(max-width:1100px){
  .cycle-layout .cycle-network{transform:scale(.5)}
  .cycle-layout .cycle-network-panel{height:490px}
}

@media(max-width:980px){
  .cycle-layout .cycle-network{transform:scale(.44)}
  .cycle-layout .cycle-network-panel{height:431px}
}

@media(max-width:760px){
  .cycle-layout .cycle-network{transform:scale(.35)}
  .cycle-layout .cycle-network-panel{height:343px}
}

@media(max-width:560px){
  .cycle-layout .cycle-network{transform:scale(.27)}
  .cycle-layout .cycle-network-panel{height:265px}
}

@media(max-width:420px){
  .cycle-layout .cycle-network{transform:scale(.19)}
  .cycle-layout .cycle-network-panel{height:186px}
}
