:root {
  --blue: #12365D;
  --navy: #071B32;
  --orange: #F36B17;
  --paper: #F8FAFC;
  --soft-orange: #FFF1E7;
  --soft-blue: #EFF5FA;
  --text: #243D58;
  --muted: #63758A;
  --line: rgba(18, 54, 93, .12);
  --card: rgba(255, 255, 255, .92);
  --shadow: 0 18px 48px rgba(7, 27, 50, .08);
  --shadow-lift: 0 24px 62px rgba(7, 27, 50, .13);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--text);
  font-family: Inter, Arial, sans-serif;
  line-height: 1.55;
  background:
    radial-gradient(circle at 12% 8%, rgba(243, 107, 23, .08), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(18, 54, 93, .07), transparent 30%),
    linear-gradient(180deg, #fff, var(--paper) 52%, var(--soft-blue));
}

a {
  color: inherit;
  text-decoration: none;
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(180px, 260px) auto;
  align-items: center;
  gap: 18px;
  padding: 16px clamp(20px, 5vw, 72px);
  background: rgba(255, 255, 255, .92);
  border-bottom: 1px solid var(--line);
  box-shadow: 0 12px 34px rgba(7, 27, 50, .06);
  backdrop-filter: blur(16px);
}

.brand img {
  display: block;
  width: 170px;
  height: auto;
}

nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px;
  color: var(--blue);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

nav a {
  padding: 8px 0;
  border-bottom: 2px solid transparent;
}

nav a:hover,
nav a:focus-visible {
  border-color: var(--orange);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.site-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-width: 0;
  border: 1px solid rgba(18, 54, 93, .16);
  border-radius: 999px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 10px 24px rgba(7, 27, 50, .06);
  overflow: hidden;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.site-search:focus-within {
  border-color: rgba(243, 107, 23, .65);
  background: #fff;
  box-shadow: 0 14px 30px rgba(243, 107, 23, .14);
}

.site-search input {
  min-width: 0;
  width: 100%;
  height: 40px;
  padding: 0 12px 0 16px;
  border: 0;
  outline: 0;
  color: var(--blue);
  background: transparent;
  font: inherit;
  font-size: .86rem;
}

.site-search input::placeholder {
  color: rgba(99, 117, 138, .88);
}

.site-search button {
  height: 40px;
  padding: 0 15px;
  border: 0;
  color: #fff;
  background: var(--orange);
  cursor: pointer;
  font: inherit;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.top-cta,
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 20px;
  border: 2px solid var(--orange);
  border-radius: 6px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: .78rem;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.top-cta,
.button.primary {
  color: #fff;
  background: var(--orange);
  box-shadow: 0 14px 30px rgba(243, 107, 23, .18);
}

.button.secondary {
  color: var(--blue);
  background: #fff;
}

.top-cta:hover,
.button:hover,
.top-cta:focus-visible,
.button:focus-visible {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lift);
}

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .56fr);
  gap: clamp(26px, 4.5vw, 58px);
  align-items: center;
  min-height: auto;
  padding: clamp(30px, 4.4vw, 54px) clamp(22px, 7vw, 96px) clamp(34px, 4.8vw, 58px);
  border-bottom: 1px solid var(--line);
}

.hero-centered {
  grid-template-columns: 1fr;
  justify-items: center;
  min-height: auto;
  padding-top: clamp(44px, 6vw, 82px);
  padding-bottom: clamp(38px, 5.5vw, 72px);
  text-align: center;
}

.hero-content {
  width: 100%;
  max-width: 760px;
  min-width: 0;
}

.hero-centered .hero-content {
  max-width: 1080px;
  margin: 0 auto;
}

.hero-content .eyebrow {
  max-width: 620px;
  margin-bottom: 14px;
  font-size: .74rem;
  letter-spacing: .12em;
}

.hero-centered .hero-content .eyebrow {
  margin-right: auto;
  margin-left: auto;
}

.hero-content .lead {
  max-width: 660px;
  color: #36536f;
  line-height: 1.58;
}

.hero-centered .hero-content .lead {
  max-width: 860px;
  margin-right: auto;
  margin-left: auto;
}

.hero-panel,
.hero-image-card,
.map-insight-card {
  width: 100%;
  max-width: 440px;
  justify-self: end;
}

.eyebrow,
.section-kicker {
  margin: 0 0 14px;
  color: var(--orange);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.hero-logo {
  display: block;
  width: min(360px, 72vw);
  height: auto;
  margin: 0 0 clamp(22px, 4vw, 34px);
  filter: drop-shadow(0 14px 20px rgba(7, 27, 50, .08));
}

h1,
h2,
h3 {
  margin: 0;
  color: var(--blue);
  line-height: 1.08;
}

h1 {
  max-width: 760px;
  font-size: clamp(2rem, 2.65vw, 2.75rem);
  letter-spacing: -.02em;
}

.hero-centered h1 {
  max-width: 1040px;
  margin-right: auto;
  margin-left: auto;
  font-size: clamp(2.15rem, 4.4vw, 4.9rem);
}

h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.5rem);
  letter-spacing: -.025em;
}

h3 {
  font-size: 1.08rem;
}

.lead {
  max-width: 720px;
  margin: 16px 0 0;
  color: var(--text);
  font-size: clamp(1rem, 1.35vw, 1.18rem);
}

.hero-detail-continuation {
  display: inline-block;
  text-align: left;
}

@media (max-width: 720px) {
  .hero-detail-break {
    display: none;
  }

  .hero-detail-continuation {
    display: inline;
    text-align: inherit;
  }
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 24px;
}

.hero-centered .hero-actions {
  justify-content: center;
}

.hero-panel {
  display: grid;
  gap: 14px;
  padding: clamp(20px, 3vw, 28px);
  border: 1px solid var(--line);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(255, 241, 231, .72));
  box-shadow: var(--shadow);
}

.hero-panel div {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 5px 16px;
  padding: 13px 0;
  border-bottom: 1px solid var(--line);
}

.hero-panel div:last-child {
  border-bottom: 0;
}

.hero-panel span {
  grid-row: span 2;
  color: var(--orange);
  font-size: 1.28rem;
  font-weight: 900;
}

.hero-panel strong {
  color: var(--blue);
  font-size: .92rem;
  font-weight: 900;
  text-transform: uppercase;
}

.hero-panel p,
.section-intro p,
.split p,
.contact p {
  margin: 0;
  color: var(--muted);
}

.hero-image-card {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow);
  overflow: hidden;
}

.hero-image-card figure {
  margin: 0;
  position: relative;
  overflow: hidden;
}

.hero-image-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  filter: saturate(.72) brightness(.82) contrast(.96);
  transform: scale(1.01);
  transition: filter .28s ease, transform .28s ease;
}

.hero-image-card:hover img,
.hero-image-card:focus-within img {
  filter: saturate(1.05) brightness(1.04) contrast(1.04);
  transform: scale(1.045);
}

.hero-image-card figcaption {
  position: absolute;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 16px;
  border-left: 4px solid var(--orange);
  color: #fff;
  background: rgba(7, 27, 50, .74);
  backdrop-filter: blur(10px);
}

.hero-image-card figcaption span {
  display: block;
  margin-bottom: 6px;
  color: #ffb17a;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hero-image-card figcaption strong {
  display: block;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  line-height: 1.2;
}

.map-insight-card {
  position: relative;
  display: grid;
  gap: 14px;
  padding: clamp(18px, 2.4vw, 24px);
  padding-top: clamp(52px, 4.4vw, 62px);
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 16px;
  background:
    radial-gradient(circle at 86% 10%, rgba(243, 107, 23, .22), transparent 26%),
    radial-gradient(circle at 16% 84%, rgba(255, 255, 255, .08), transparent 34%),
    linear-gradient(145deg, #071B32, #12365D);
  box-shadow: 0 28px 68px rgba(7, 27, 50, .2);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.map-card-logo {
  position: absolute;
  top: 18px;
  right: 18px;
  width: min(128px, 36%);
  height: auto;
  padding: 8px 10px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .95);
  box-shadow: 0 12px 28px rgba(7, 27, 50, .24);
}

.map-insight-card:hover,
.map-insight-card:focus-within {
  transform: translateY(-5px);
  border-color: rgba(243, 107, 23, .72);
  background:
    radial-gradient(circle at 86% 10%, rgba(243, 107, 23, .34), transparent 28%),
    radial-gradient(circle at 16% 84%, rgba(255, 255, 255, .1), transparent 36%),
    linear-gradient(145deg, #08223F, #1D5184);
  box-shadow: var(--shadow-lift);
}

.map-copy h2 {
  margin-bottom: 8px;
  color: #fff;
  font-size: clamp(1.28rem, 1.9vw, 1.72rem);
}

.map-copy p:not(.section-kicker) {
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: .98rem;
  line-height: 1.5;
}

.map-stage {
  position: relative;
  min-height: 292px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, .055) 1px, transparent 1px),
    radial-gradient(circle at 52% 48%, rgba(243, 107, 23, .14), transparent 26%),
    rgba(255, 255, 255, .06);
  background-size: 36px 36px, 36px 36px, auto, auto;
  overflow: hidden;
}

.nl-outline {
  position: absolute;
  inset: 22px 25% 22px 22%;
  width: 54%;
  height: calc(100% - 36px);
  fill: rgba(255, 255, 255, .13);
  stroke: rgba(255, 255, 255, .42);
  stroke-width: 4;
  filter: drop-shadow(0 18px 28px rgba(7, 27, 50, .32));
}

.province-dot {
  position: absolute;
  z-index: 2;
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 2px solid rgba(255, 255, 255, .72);
  border-radius: 999px;
  color: #fff;
  background: rgba(255, 255, 255, .13);
  box-shadow: 0 10px 24px rgba(7, 27, 50, .22);
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .02em;
  animation: provinceLift 7.2s ease-in-out infinite;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.province-dot::after {
  content: attr(data-label);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  min-width: max-content;
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--navy);
  background: #fff;
  box-shadow: 0 12px 24px rgba(7, 27, 50, .18);
  font-size: .62rem;
  font-weight: 900;
  opacity: 0;
  transform: translateX(-50%) translateY(5px);
  transition: opacity .18s ease, transform .18s ease;
  pointer-events: none;
}

.province-dot:hover,
.province-dot:focus-visible {
  z-index: 4;
  transform: translateY(-8px) scale(1.12);
  border-color: #fff;
  background: var(--orange);
}

.province-dot:hover::after,
.province-dot:focus-visible::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.province-nh { left: 42%; top: 25%; animation-delay: 0s; }
.province-zh { left: 38%; top: 39%; animation-delay: .6s; }
.province-ut { left: 52%; top: 40%; animation-delay: 1.2s; }
.province-nb { left: 45%; top: 66%; animation-delay: 1.8s; }
.province-li { left: 61%; top: 78%; animation-delay: 2.4s; }
.province-ze { left: 29%; top: 73%; animation-delay: 3s; }
.province-fl { left: 55%; top: 30%; animation-delay: 3.6s; }
.province-fr { left: 47%; top: 10%; animation-delay: 4.2s; }
.province-gr { left: 63%; top: 7%; animation-delay: 4.8s; }
.province-dr { left: 65%; top: 22%; animation-delay: 5.4s; }
.province-ov { left: 66%; top: 38%; animation-delay: 6s; }
.province-ge { left: 61%; top: 55%; animation-delay: 6.6s; }

.incident {
  position: absolute;
  width: 16px;
  height: 16px;
  border: 3px solid rgba(255, 255, 255, .96);
  border-radius: 999px;
  background: var(--orange);
  box-shadow: 0 0 0 0 rgba(243, 107, 23, .34), 0 10px 22px rgba(7, 27, 50, .16);
  animation: signalPulse 2.8s ease-in-out infinite, driftSignal 7s ease-in-out infinite alternate;
}

.incident::after {
  content: "";
  position: absolute;
  inset: -14px;
  border: 1px solid rgba(243, 107, 23, .22);
  border-radius: inherit;
}

.incident-a { left: 50%; top: 24%; animation-delay: 0s, 0s; }
.incident-b { left: 44%; top: 42%; animation-delay: .5s, -1s; }
.incident-c { left: 57%; top: 55%; animation-delay: .9s, -2s; }
.incident-d { left: 48%; top: 72%; animation-delay: 1.4s, -3s; }

.scan-line {
  position: absolute;
  top: 16%;
  bottom: 16%;
  left: 18%;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(243, 107, 23, .8), transparent);
  box-shadow: 0 0 26px rgba(243, 107, 23, .4);
  animation: scanAcross 5.8s ease-in-out infinite;
}

.magnifier {
  position: absolute;
  z-index: 3;
  left: 18%;
  top: 18%;
  width: 82px;
  height: 82px;
  border: 5px solid rgba(255, 255, 255, .9);
  border-radius: 999px;
  background:
    radial-gradient(circle at 50% 50%, rgba(255, 255, 255, .32), rgba(255, 255, 255, .08)),
    rgba(255, 255, 255, .08);
  box-shadow: 0 20px 44px rgba(7, 27, 50, .32), inset 0 0 0 2px rgba(243, 107, 23, .48);
  backdrop-filter: blur(1px) saturate(1.4);
  animation: magnifyRoute 9s ease-in-out infinite;
}

.magnifier::after {
  content: "";
  position: absolute;
  right: -34px;
  bottom: -20px;
  width: 48px;
  height: 7px;
  border-radius: 999px;
  background: #fff;
  transform: rotate(43deg);
  transform-origin: left center;
}

.magnifier span {
  position: absolute;
  inset: 19px;
  border-radius: inherit;
  border: 2px solid rgba(243, 107, 23, .5);
}

.map-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.map-stats div {
  padding: 13px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 10px;
  background: rgba(255, 255, 255, .08);
}

.map-stats span {
  display: block;
  color: var(--orange);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.map-stats strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: .88rem;
  line-height: 1.2;
  text-transform: uppercase;
}

@keyframes provinceLift {
  0%, 100% {
    transform: translateY(0) scale(.92);
    border-color: rgba(255, 255, 255, .45);
    background: rgba(255, 255, 255, .12);
    box-shadow: 0 10px 24px rgba(7, 27, 50, .22);
  }
  8%, 18% {
    transform: translateY(-9px) scale(1.12);
    border-color: #fff;
    background: var(--orange);
    box-shadow: 0 0 0 12px rgba(243, 107, 23, .12), 0 16px 30px rgba(7, 27, 50, .3);
  }
  28% {
    transform: translateY(0) scale(.96);
    border-color: rgba(255, 255, 255, .55);
    background: rgba(255, 255, 255, .14);
  }
}

@keyframes signalPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(243, 107, 23, .34), 0 10px 22px rgba(7, 27, 50, .16); }
  50% { box-shadow: 0 0 0 18px rgba(243, 107, 23, 0), 0 10px 22px rgba(7, 27, 50, .16); }
}

@keyframes driftSignal {
  0% { transform: translate(-4px, 3px) scale(.96); }
  100% { transform: translate(6px, -5px) scale(1.08); }
}

@keyframes scanAcross {
  0%, 100% { transform: translateX(0); opacity: .25; }
  50% { transform: translateX(260px); opacity: .9; }
}

@keyframes magnifyRoute {
  0%, 100% { transform: translate(0, 0) scale(.95); }
  22% { transform: translate(160px, 12px) scale(1.02); }
  46% { transform: translate(92px, 126px) scale(1.08); }
  70% { transform: translate(186px, 178px) scale(1.02); }
  86% { transform: translate(54px, 214px) scale(1.04); }
}

section {
  padding: clamp(56px, 8vw, 104px) clamp(22px, 7vw, 96px);
}

.section-intro {
  max-width: 760px;
  margin-bottom: 28px;
}

/* Give the supporting sentence clear breathing room below the large heading. */
.audience .section-intro > h2 + p {
  margin-top: clamp(14px, 1.6vw, 20px);
  line-height: 1.55;
}

.section-intro.wide {
  max-width: 980px;
}

.audience-grid,
.approach-grid,
.topic-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.audience-grid article,
.audience-grid details,
.topic-card,
.approach-grid article,
.soft-card,
.training-list details {
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--card);
  box-shadow: var(--shadow);
}

.audience-grid article,
.audience-grid details,
.topic-card {
  min-height: 92px;
  padding: 24px;
  color: var(--blue);
  font-weight: 900;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.audience-grid details {
  display: grid;
  align-content: start;
  overflow: hidden;
}

.audience-grid article,
.topic-card {
  display: grid;
  align-content: start;
  gap: 10px;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.topic-card span {
  font-size: 1rem;
}

.topic-card strong {
  max-width: 32rem;
  color: #36536f;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.45;
  text-transform: none;
  letter-spacing: 0;
}

.topic-card small {
  color: var(--orange);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.audience-grid details:hover,
.audience-grid details:focus-within,
.audience-grid details[open],
.topic-card:hover,
.topic-card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(243, 107, 23, .55);
  background: linear-gradient(120deg, rgba(255, 241, 231, .94), rgba(255, 255, 255, .98));
  box-shadow: var(--shadow-lift);
}

.topic-card:hover span,
.topic-card:focus-visible span {
  color: var(--orange);
}

.topic-card:hover,
.topic-card:focus-visible {
  border-color: rgba(255, 107, 0, .7);
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 107, 0, .22), transparent 34%),
    linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 22px 48px rgba(15, 45, 82, .24), 0 0 0 1px rgba(255, 107, 0, .16);
}

.topic-card:hover span,
.topic-card:focus-visible span,
.topic-card:hover strong,
.topic-card:focus-visible strong {
  color: #fff;
}

.topic-card:hover small,
.topic-card:focus-visible small {
  color: #ffb277;
}

.blog-teaser {
  margin-top: clamp(28px, 5vw, 48px);
}

.blog-card {
  display: grid;
  grid-template-columns: minmax(220px, .38fr) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 28px);
  align-items: center;
  padding: clamp(16px, 2.6vw, 24px);
  border: 1px solid var(--line);
  border-radius: 16px;
  color: var(--blue);
  background:
    radial-gradient(circle at 90% 50%, rgba(15, 45, 82, 0), transparent 38%),
    #fff;
  box-shadow: var(--shadow);
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.blog-card + .blog-card {
  margin-top: 18px;
}

.blog-card:hover,
.blog-card:focus-visible {
  transform: translateY(-5px);
  border-color: rgba(15, 45, 82, .52);
  background:
    radial-gradient(circle at 90% 50%, rgba(15, 45, 82, .2), transparent 42%),
    linear-gradient(120deg, rgba(255, 255, 255, .98), rgba(239, 245, 250, .98));
  box-shadow: 0 24px 54px rgba(15, 45, 82, .18);
}

.blog-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  object-fit: cover;
  filter: saturate(.9) contrast(.96);
  transition: filter .2s ease, transform .2s ease;
}

.blog-card:hover img,
.blog-card:focus-visible img {
  filter: saturate(1.06) contrast(1.03);
  transform: scale(1.01);
}

.blog-card span,
.blog-card strong,
.blog-card small {
  grid-column: 2;
}

.blog-card span {
  color: var(--orange);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.blog-card strong {
  max-width: 720px;
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  line-height: 1.08;
}

.blog-card small {
  color: #36536f;
  font-size: .94rem;
  font-weight: 800;
}

.blog-collapsible {
  margin-top: clamp(22px, 4vw, 36px);
}

.blog-collapsible summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px 18px;
  align-items: center;
  padding: clamp(18px, 2.8vw, 26px);
  border: 1px solid rgba(15, 45, 82, .14);
  border-radius: 18px;
  background:
    radial-gradient(circle at 92% 45%, rgba(255, 107, 0, .14), transparent 34%),
    linear-gradient(120deg, rgba(255, 255, 255, .96), rgba(244, 248, 251, .94));
  box-shadow: 0 18px 45px rgba(15, 45, 82, .10);
  cursor: pointer;
  list-style: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.blog-collapsible summary::-webkit-details-marker {
  display: none;
}

.blog-collapsible summary:hover,
.blog-collapsible[open] summary {
  transform: translateY(-2px);
  border-color: rgba(255, 107, 0, .42);
  box-shadow: 0 22px 56px rgba(15, 45, 82, .14);
  background:
    radial-gradient(circle at 92% 45%, rgba(255, 107, 0, .24), transparent 36%),
    linear-gradient(120deg, #fff, rgba(239, 245, 250, .98));
}

.blog-collapsible summary span {
  grid-column: 1 / -1;
  color: var(--orange);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.blog-collapsible summary strong {
  min-width: 0;
  color: var(--blue);
  font-size: clamp(1.25rem, 2.4vw, 2rem);
  line-height: 1.08;
}

.blog-collapsible summary small {
  color: var(--muted);
  font-size: clamp(.95rem, 1.4vw, 1.08rem);
  line-height: 1.5;
}

.blog-collapsible summary b {
  justify-self: end;
  white-space: nowrap;
  padding: 12px 18px;
  border-radius: 999px;
  background: var(--orange);
  color: #fff;
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.blog-strip {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(280px, 390px);
  gap: 18px;
  margin-top: 18px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  padding: 4px 4px 18px;
}

.blog-strip .blog-card {
  min-height: 100%;
  grid-template-columns: 1fr;
  align-content: start;
  gap: 12px;
  padding: 14px;
  scroll-snap-align: start;
}

.blog-strip .blog-card + .blog-card {
  margin-top: 0;
}

.blog-strip .blog-card img {
  aspect-ratio: 16 / 10;
}

.blog-strip .blog-card span,
.blog-strip .blog-card strong,
.blog-strip .blog-card small {
  grid-column: auto;
}

.blog-strip .blog-card strong {
  max-width: none;
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  line-height: 1.18;
}

.blog-strip .blog-card small {
  font-size: .88rem;
}

.audience-grid summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  cursor: pointer;
  list-style: none;
  color: var(--blue);
  text-transform: uppercase;
  letter-spacing: .04em;
}

.audience-grid summary::-webkit-details-marker {
  display: none;
}

.audience-grid summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 2px solid rgba(243, 107, 23, .32);
  border-radius: 50%;
  color: var(--orange);
  font-weight: 900;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.audience-grid details:hover summary::after,
.audience-grid details[open] summary::after {
  color: #fff;
  border-color: var(--orange);
  background: var(--orange);
}

.audience-grid details[open] summary::after {
  content: "-";
}

.audience-grid details p {
  margin: 16px 0 0;
  max-width: 54ch;
  color: var(--text);
  font-size: .96rem;
  font-weight: 500;
  line-height: 1.55;
}

/* Donkerblauwe doelgroepkaarten in dezelfde visuele lijn als de aanpakkaarten. */
.audience-grid details {
  border-color: rgba(255, 107, 0, .4);
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 107, 0, .16), transparent 30%),
    linear-gradient(135deg, #30394f 0%, #173f68 54%, #245f8f 100%);
  box-shadow: 0 18px 42px rgba(7, 27, 50, .16);
}

.audience-grid details:hover,
.audience-grid details:focus-within,
.audience-grid details[open] {
  border-color: rgba(255, 107, 0, .78);
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 107, 0, .24), transparent 32%),
    linear-gradient(135deg, #344058 0%, #194874 54%, #2b6b9e 100%);
  box-shadow: 0 22px 50px rgba(7, 27, 50, .24);
}

.audience-grid summary {
  color: #fff;
}

.audience-grid details p {
  color: rgba(255, 255, 255, .88);
}

.audience-grid summary::after {
  border-color: rgba(255, 143, 66, .72);
  color: #ff8a3d;
  background: rgba(255, 255, 255, .08);
}

.approach {
  background: linear-gradient(180deg, rgba(255, 241, 231, .55), rgba(255, 255, 255, .82));
}

.approach-grid article {
  padding: 28px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.approach-grid article:hover,
.approach-grid article:focus-within {
  transform: translateY(-5px);
  border-color: rgba(243, 107, 23, .58);
  background: linear-gradient(120deg, rgba(255, 241, 231, .96), rgba(255, 255, 255, .98));
  box-shadow: var(--shadow-lift);
}

.check {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 20px;
  border-radius: 50%;
  color: #fff !important;
  border: 2px solid rgba(255, 255, 255, .88);
  background: #f36b17 !important;
  box-shadow: 0 0 0 5px rgba(243, 107, 23, .12), 0 8px 20px rgba(15, 45, 82, .16);
  font-size: 1.28rem;
  font-weight: 900;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.approach-grid article:hover .check,
.approach-grid article:focus-within .check {
  color: #fff !important;
  transform: scale(1.18) rotate(-3deg);
  border: 2px solid #fff;
  background: #ff5a00 !important;
  box-shadow:
    0 0 0 7px rgba(255, 107, 0, .22),
    0 0 26px rgba(255, 90, 0, .72),
    0 14px 30px rgba(15, 45, 82, .28);
}

/* Dit vinkje mag niet door het algemene leesbaarheidseffect worden vervaagd. */
.approach-grid article.sv-readable-hover .check.sv-hover-dot,
.approach-grid article.sv-readable-hover:hover .check.sv-hover-dot,
.approach-grid article.sv-readable-hover:focus-within .check.sv-hover-dot {
  z-index: 8 !important;
  color: #fff !important;
  background: #ff5a00 !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

.approach-grid article.sv-readable-hover:hover .check.sv-hover-dot,
.approach-grid article.sv-readable-hover:focus-within .check.sv-hover-dot {
  transform: translateY(-5px) scale(1.3) rotate(-7deg) !important;
  box-shadow: 0 0 0 9px rgba(255,110,18,.26), 0 0 34px rgba(255,82,0,.95), 0 16px 30px rgba(8,38,70,.3) !important;
}

/* Vinkje en kaarttitel staan altijd naast elkaar, zonder overlap. */
.approach-grid article {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  grid-template-rows: auto 1fr;
  column-gap: 16px;
  align-items: center;
}

.approach-grid article > .check {
  grid-column: 1;
  grid-row: 1;
  justify-self: center;
  margin: 0 !important;
}

.approach-grid article > h3,
.approach-grid article > h3.sv-label-front {
  grid-column: 2;
  grid-row: 1;
  justify-self: start;
  width: auto !important;
  max-width: 100%;
  margin: 0 !important;
  transform: none !important;
}

.approach-grid article > p {
  grid-column: 1 / -1;
  grid-row: 2;
  align-self: start;
  margin: 24px 0 0 !important;
}

.approach-grid article:hover h3,
.approach-grid article:focus-within h3 {
  color: var(--orange);
}

.approach-grid p {
  color: var(--muted);
}

.mini-custom {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(300px, .85fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: center;
  margin-inline: clamp(22px, 7vw, 96px);
  padding: clamp(28px, 4.5vw, 50px);
  border: 1px solid rgba(255, 107, 0, .22);
  border-radius: 18px;
  color: #fff;
  background:
    radial-gradient(circle at 15% 20%, rgba(255, 107, 0, .18), transparent 28%),
    linear-gradient(135deg, #0f2d52, #08213d);
  box-shadow: 0 22px 54px rgba(7, 27, 50, .16);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.mini-custom:hover,
.mini-custom:focus-within {
  transform: translateY(-5px);
  border-color: rgba(255, 107, 0, .58);
  background:
    radial-gradient(circle at 15% 20%, rgba(255, 107, 0, .28), transparent 30%),
    linear-gradient(135deg, #123866, #08213d);
  box-shadow: 0 28px 70px rgba(7, 27, 50, .24);
}

.mini-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: max-content;
  margin-bottom: 18px;
  padding: 8px 14px;
  border: 1px solid rgba(255, 255, 255, .32);
  border-radius: 999px;
  color: #fff;
  background: rgba(255, 255, 255, .08);
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .03em;
}

.mini-label::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ff6b00;
  box-shadow: 0 0 0 4px rgba(255, 107, 0, .16);
  transform-origin: center;
  animation: hero-dot-heartbeat 1.55s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  .mini-label::before { animation: none; }
}


.mini-custom h2 {
  max-width: 760px;
  color: #fff;
  font-size: clamp(1.7rem, 3vw, 3rem);
}

.mini-custom p {
  margin: 16px 0 0;
  color: rgba(255, 255, 255, .82);
  font-size: clamp(1rem, 1.3vw, 1.12rem);
  line-height: 1.65;
}

.mini-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 24px;
  padding: 14px 20px;
  border-radius: 999px;
  color: var(--blue);
  background: #fff;
  font-size: .9rem;
  font-weight: 900;
  text-decoration: none;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.mini-link:hover,
.mini-link:focus-visible {
  transform: translateY(-2px);
  background: #fff2e8;
  box-shadow: 0 16px 34px rgba(0, 0, 0, .18);
}

.mini-benefits {
  display: grid;
  gap: 14px;
}

.mini-benefits article {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 12px;
  background: rgba(255, 255, 255, .07);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.mini-benefits article:hover,
.mini-benefits article:focus-within {
  transform: translateX(4px);
  border-color: rgba(255, 107, 0, .46);
  background: rgba(255, 107, 0, .12);
}

.mini-benefits span {
  color: #ff8a3d;
  font-size: 1.35rem;
  font-weight: 900;
}

.mini-benefits h3 {
  color: #fff;
  font-size: 1rem;
}

.mini-benefits p {
  margin-top: 5px;
  font-size: .92rem;
  line-height: 1.45;
}

.training-section {
  background: linear-gradient(180deg, rgba(239, 245, 250, .72), rgba(255, 255, 255, .9));
}

.training-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.training-list details {
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 45%, rgba(15, 45, 82, 0), transparent 35%),
    #fff;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.training-list details:hover,
.training-list details[open] {
  transform: translateY(-4px);
  border-color: rgba(15, 45, 82, .5);
  background:
    radial-gradient(circle at 88% 45%, rgba(15, 45, 82, .22), transparent 42%),
    linear-gradient(120deg, rgba(255, 255, 255, .98), rgba(239, 245, 250, .96));
  box-shadow: 0 24px 54px rgba(15, 45, 82, .18);
}

.training-list summary {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) 32px;
  align-items: center;
  gap: 16px;
  min-height: 96px;
  padding: 22px 24px;
  cursor: pointer;
  list-style: none;
  transition: background .2s ease;
}

.training-list summary::-webkit-details-marker {
  display: none;
}

.training-list summary::after {
  content: "+";
  color: var(--orange);
  font-size: 2rem;
  font-weight: 900;
}

.training-list details[open] summary::after {
  content: "-";
}

.training-list details:hover summary,
.training-list details[open] summary {
  background: linear-gradient(90deg, rgba(15, 45, 82, .06), rgba(255, 255, 255, 0));
}

.training-list details:hover summary::after,
.training-list details[open] summary::after {
  color: #fff;
  text-shadow: 0 0 18px rgba(255, 107, 0, .52);
}

.training-list details:hover span,
.training-list details[open] span {
  text-shadow: 0 0 20px rgba(255, 107, 0, .34);
}

.training-list details:hover strong,
.training-list details[open] strong {
  color: #fff;
}

.training-list span {
  color: var(--orange);
  font-size: 1.45rem;
  font-weight: 900;
}

.training-list strong {
  color: var(--blue);
  font-size: 1.08rem;
  line-height: 1.25;
  text-transform: none;
}

.training-list details:hover,
.training-list details[open] {
  border-color: rgba(255, 107, 0, .7);
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 107, 0, .2), transparent 34%),
    linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 22px 48px rgba(15, 45, 82, .24), 0 0 0 1px rgba(255, 107, 0, .14);
}

.training-list details:hover summary,
.training-list details[open] summary {
  background: rgba(255, 255, 255, .025);
}

.training-list details:hover p,
.training-list details[open] p,
.training-list details:hover .inline-program-link,
.training-list details[open] .inline-program-link {
  color: #fff;
}

.training-list .check-marker {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  color: var(--orange) !important;
  border: 1px solid rgba(255, 107, 0, .42);
  background: #eaf4fb;
  box-shadow: 0 0 0 6px rgba(255, 107, 0, .08), 0 0 22px rgba(255, 107, 0, .18);
  font-size: 1.12rem;
  line-height: 1;
}

.training-list details:hover .check-marker,
.training-list details[open] .check-marker {
  color: #fff !important;
  border-color: var(--orange);
  background: var(--orange);
  box-shadow: 0 0 0 6px rgba(255, 255, 255, .08), 0 0 24px rgba(255, 107, 0, .42);
}

.training-list p {
  margin: 0;
  padding: 0 24px 24px 92px;
  color: var(--text);
}

.training-list .training-availability {
  margin: -10px 24px 24px 92px;
  padding: 12px 14px;
  border-left: 3px solid var(--orange);
  border-radius: 0 8px 8px 0;
  color: var(--blue);
  background: rgba(255, 107, 0, .08);
  font-size: .92rem;
  font-weight: 800;
  line-height: 1.45;
}

.partnertrainer-callout {
  margin-top: 28px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(255, 107, 0, .24);
  border-radius: 16px;
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 107, 0, .32), transparent 32%),
    linear-gradient(135deg, #0f2d52, #174a7a);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  box-shadow: 0 22px 48px rgba(15, 45, 82, .22);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.partnertrainer-callout:hover,
.partnertrainer-callout:focus-within {
  transform: translateY(-4px);
  border-color: rgba(255, 107, 0, .72);
  box-shadow: 0 28px 68px rgba(15, 45, 82, .34), 0 0 34px rgba(255, 107, 0, .18);
}

.partnertrainer-callout .section-kicker {
  color: #ffb26d;
}

.partnertrainer-callout h3 {
  margin: 8px 0 10px;
  color: #fff;
  font-size: clamp(1.4rem, 2vw, 2.25rem);
  line-height: 1.05;
}

.partnertrainer-callout p:not(.section-kicker) {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, .88);
}

.partnertrainer-callout .button {
  flex: 0 0 auto;
  white-space: nowrap;
}

.education-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 24px;
  padding: clamp(18px, 2.5vw, 28px);
  border: 1px solid rgba(15, 45, 82, .14);
  border-left: 4px solid var(--orange);
  border-radius: 16px;
  background: linear-gradient(135deg, #fff, rgba(15, 45, 82, .055));
  box-shadow: 0 18px 42px rgba(15, 45, 82, .10);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.education-callout:hover,
.education-callout:focus-within {
  transform: translateY(-4px);
  border-color: rgba(15, 45, 82, .34);
  background: linear-gradient(135deg, #fff, rgba(15, 45, 82, .09));
  box-shadow: 0 24px 58px rgba(15, 45, 82, .18), 0 0 28px rgba(255, 107, 0, .12);
}

.education-callout h3 {
  margin: 6px 0 8px;
  color: var(--blue);
  font-size: clamp(1.25rem, 1.8vw, 1.9rem);
}

.education-callout p:not(.section-kicker) {
  max-width: 720px;
  margin: 0;
  color: var(--text);
}

.education-callout .button {
  flex: 0 0 auto;
  white-space: nowrap;
}

.inline-program-link {
  display: inline-flex;
  align-items: center;
  margin: 0 24px 26px 92px;
  color: var(--orange);
  font-size: .86rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-decoration: none;
  text-transform: uppercase;
}

.inline-program-link:hover,
.inline-program-link:focus {
  color: #ff7a1f;
  text-decoration: underline;
}

.split {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(320px, 1.15fr);
  gap: clamp(28px, 6vw, 84px);
  align-items: start;
}

.collapsible-section {
  align-items: center;
}

.expertteam-actions {
  width: 100%;
  display: grid;
  gap: 18px;
}

.expertteam-page-link {
  justify-self: start;
}

.split p {
  margin-top: 18px;
  font-size: 1.08rem;
}

.section-disclosure {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255, 255, 255, .9);
  box-shadow: var(--shadow);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.section-disclosure:hover,
.section-disclosure:focus-within,
.section-disclosure[open] {
  transform: translateY(-4px);
  border-color: rgba(243, 107, 23, .55);
  background: linear-gradient(120deg, rgba(255, 241, 231, .96), rgba(255, 255, 255, .98));
  box-shadow: 0 22px 48px rgba(243, 107, 23, .14), var(--shadow-lift);
}

.section-disclosure summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 16px;
  min-height: 76px;
  padding: 20px clamp(22px, 4vw, 34px);
  color: var(--blue);
  cursor: pointer;
  font-size: clamp(1.02rem, 1.55vw, 1.18rem);
  font-weight: 900;
  list-style: none;
}

.section-disclosure summary::-webkit-details-marker {
  display: none;
}

.section-disclosure summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #fff;
  background: var(--orange);
  font-size: 1.25rem;
  line-height: 1;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.section-disclosure:hover summary::after,
.section-disclosure:focus-within summary::after,
.section-disclosure[open] summary::after {
  transform: scale(1.08);
  background: #ff7a1f;
  box-shadow: 0 12px 26px rgba(243, 107, 23, .24);
}

.section-disclosure[open] summary::after {
  content: "-";
}

.soft-card {
  padding: clamp(24px, 4vw, 40px);
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.soft-card ul {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.soft-card li {
  padding-left: 20px;
  border-left: 4px solid var(--orange);
  color: var(--text);
}

.knowledge {
  background: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(255, 241, 231, .46));
}

.knowledge-home .section-intro {
  display: grid;
  justify-items: start;
  gap: 12px;
}

.knowledge-home .section-intro h2,
.knowledge-home .section-intro p {
  margin-top: 0;
}

.knowledge-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-width: min(100%, 260px);
  margin-top: 10px;
  padding: 15px 17px 15px 20px;
  border: 1px solid rgba(255, 107, 0, .42);
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 16px 36px rgba(15, 45, 82, .18);
  font-weight: 800;
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.knowledge-cta-arrow {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 999px;
  color: #fff;
  background: var(--orange);
  font-size: 1.25rem;
  line-height: 1;
}

.knowledge-cta:hover,
.knowledge-cta:focus-visible {
  transform: translateY(-3px);
  border-color: var(--orange);
  background: linear-gradient(135deg, #0f2d52, #1c5483);
  box-shadow: 0 22px 46px rgba(15, 45, 82, .24), 0 0 24px rgba(255, 107, 0, .16);
}

.knowledge-index-hero {
  background:
    radial-gradient(circle at 86% 18%, rgba(255, 107, 0, .14), transparent 30%),
    linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(236, 245, 251, .96));
}

.knowledge-overview-grid,
.knowledge-article-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.knowledge-article-card {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 24px;
  border: 1px solid rgba(15, 45, 82, .14);
  border-radius: 16px;
  color: var(--blue);
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--shadow);
  text-decoration: none;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.knowledge-article-card span,
.knowledge-article-card b {
  color: var(--orange);
  font-size: .82rem;
  font-weight: 800;
}

.knowledge-article-card h3,
.knowledge-article-card p {
  margin: 0;
}

.knowledge-article-card h3 {
  color: var(--blue);
  font-size: 1.12rem;
  line-height: 1.3;
}

.knowledge-article-card p {
  color: var(--muted);
  line-height: 1.55;
}

.knowledge-article-card:hover,
.knowledge-article-card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(255, 107, 0, .7);
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 107, 0, .2), transparent 34%),
    linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 22px 48px rgba(15, 45, 82, .22), 0 0 0 1px rgba(255, 107, 0, .14);
}

.knowledge-article-card:hover :is(h3, p),
.knowledge-article-card:focus-visible :is(h3, p) {
  color: #fff;
}

.knowledge-article-card:hover :is(span, b),
.knowledge-article-card:focus-visible :is(span, b) {
  color: #ffb277;
}

@media (max-width: 960px) {
  .knowledge-overview-grid,
  .knowledge-article-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .knowledge-home .section-intro {
    justify-items: stretch;
  }

  .knowledge-cta {
    width: 100%;
  }

  .knowledge-overview-grid,
  .knowledge-article-grid {
    grid-template-columns: 1fr;
  }

  .knowledge-article-card {
    padding: 20px;
  }
}

.knowledge-disclosure {
  margin-top: 26px;
}

.knowledge-disclosure .topic-grid {
  padding: 0 clamp(18px, 3vw, 28px) clamp(22px, 4vw, 34px);
}

.contact {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(280px, .75fr);
  gap: 32px;
  align-items: center;
  background: linear-gradient(120deg, var(--navy), var(--blue));
}

.contact h2,
.contact p {
  color: #fff;
}

.contact .section-kicker {
  color: #ffb17c;
}

.contact-actions {
  display: grid;
  gap: 14px;
}

.contact-with-form {
  align-items: start;
  gap: clamp(2rem, 5vw, 5rem);
}

.secure-contact-form {
  width: min(100%, 720px);
  padding: clamp(1.35rem, 3vw, 2.25rem);
  border: 1px solid rgba(13, 65, 116, .15);
  border-radius: 24px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 22px 60px rgba(9, 42, 77, .12);
}

.secure-contact-form label,
.privacy-check {
  display: grid;
  gap: .45rem;
  margin-bottom: 1rem;
  color: #123c67;
  font-weight: 700;
}

.secure-contact-form :is(input, select, textarea) {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #bfd0df;
  border-radius: 12px;
  padding: .85rem 1rem;
  background: #fff;
  color: #123c67;
  font: inherit;
}

.secure-contact-form :is(input, select, textarea):focus {
  border-color: #148bd2;
  outline: 3px solid rgba(20, 139, 210, .16);
}

.form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.privacy-check {
  grid-template-columns: auto 1fr;
  align-items: start;
  font-size: .9rem;
  font-weight: 500;
}

.privacy-check input { width: auto; margin-top: .2rem; }

.captcha-slot { margin: 1rem 0; min-height: 78px; }

.captcha-preview {
  display: flex;
  align-items: center;
  gap: .85rem;
  max-width: 304px;
  min-height: 74px;
  padding: .75rem 1rem;
  border: 1px solid #c9d5df;
  border-radius: 8px;
  background: #f7f9fb;
  color: #173d63;
  font-weight: 700;
}

.captcha-preview span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 2px solid #168ccc;
  border-radius: 6px;
  color: #168ccc;
}

.captcha-preview small { display: block; color: #66798b; font-weight: 500; }
.form-status { min-height: 1.4em; margin-top: .75rem; }

.form-success {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .9rem;
  align-items: start;
  margin-bottom: 1.35rem;
  padding: 1rem 1.1rem;
  border: 1px solid #8fd0bb;
  border-radius: 14px;
  background: #eaf8f2;
  color: #164f40;
}

.form-success[hidden] { display: none; }
.form-success > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #168f6a;
  color: #fff;
  font-weight: 900;
}
.form-success strong { display: block; margin-bottom: .2rem; font-size: 1.05rem; }
.form-success p { margin: 0; color: #285f52; }

@media (max-width: 680px) {
  .form-row { grid-template-columns: 1fr; gap: 0; }
}


.practice-day {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  padding-top: clamp(26px, 4vw, 46px);
  padding-bottom: clamp(26px, 4vw, 46px);
  background:
    radial-gradient(circle at 90% 20%, rgba(243, 107, 23, .14), transparent 30%),
    linear-gradient(120deg, rgba(255, 255, 255, .96), rgba(242, 247, 251, .92));
}

.practice-day-intro,
.legal-support-copy,
.vacancy-intro {
  width: min(100%, 1180px);
  margin: 0 auto;
}

.practice-day-intro h2 {
  max-width: 760px;
}

.practice-day-intro p {
  max-width: 68ch;
  color: var(--muted);
}

.practice-day-panel {
  width: min(100%, 1180px);
  margin: 0 auto;
}

.practice-day-content {
  display: grid;
  gap: 22px;
  padding: 0 clamp(18px, 3vw, 30px) clamp(22px, 4vw, 34px);
}

.practice-day-copy {
  display: grid;
  gap: 12px;
}

.practice-day-copy h3,
.practice-poll h3 {
  margin: 0;
  color: var(--blue);
  font-size: clamp(1.1rem, 1.7vw, 1.35rem);
}

.practice-day-copy p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.practice-day-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.practice-day-cards article {
  min-height: 150px;
  padding: 18px;
  border: 1px solid rgba(15, 45, 82, .12);
  border-radius: 12px;
  background: rgba(255, 255, 255, .86);
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.practice-day-cards article:hover,
.practice-day-cards article:focus-within {
  transform: translateY(-4px);
  border-color: rgba(243, 107, 23, .48);
  background:
    radial-gradient(circle at 85% 20%, rgba(243, 107, 23, .18), transparent 36%),
    #fff;
  box-shadow: var(--shadow-lift);
}

.practice-day-cards span {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  margin-bottom: 10px;
  color: #f36b17 !important;
  border: 2px solid rgba(243, 107, 23, .5);
  border-radius: 999px;
  background: #fff3ea;
  box-shadow: 0 0 0 5px rgba(243, 107, 23, .08);
  font-size: 1.18rem;
  font-weight: 900;
  transition: transform .22s cubic-bezier(.2,.8,.2,1.25), color .18s ease, background .18s ease, border-color .18s ease, box-shadow .22s ease;
}

.practice-day-cards article:hover span,
.practice-day-cards article:focus-within span {
  color: #fff !important;
  border-color: #fff;
  background: #ff5a00 !important;
  box-shadow:
    0 0 0 7px rgba(255, 107, 0, .22),
    0 0 26px rgba(255, 90, 0, .7),
    0 12px 26px rgba(15, 45, 82, .24);
  transform: scale(1.18) rotate(-3deg);
}

.practice-day-cards strong {
  display: block;
  color: var(--blue);
  font-size: .95rem;
  text-transform: uppercase;
}

/* Kaartlabels: los rondje voor het woord, zonder overlap, op trainingen en blogs. */
.data-card > span:not(.check-marker),
.event-card > span:not(.check-marker),
.blog-page .content-card > span:not(.check-marker) {
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #f36b17 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: .9rem;
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: .03em;
  white-space: normal;
  transform: none !important;
  transition: color .2s ease, transform .2s ease;
}

.data-card > span:not(.check-marker)::before,
.event-card > span:not(.check-marker)::before,
.blog-page .content-card > span:not(.check-marker)::before {
  content: "";
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  border: 2px solid rgba(243, 107, 23, .6);
  border-radius: 50%;
  background: #fff1e7;
  box-shadow: 0 0 0 5px rgba(243, 107, 23, .08);
  transition: transform .22s cubic-bezier(.2,.8,.2,1.25), background .2s ease, border-color .2s ease, box-shadow .22s ease;
}

:is(.data-card, .event-card, .blog-page .content-card):hover > span:not(.check-marker),
:is(.data-card, .event-card, .blog-page .content-card):focus-within > span:not(.check-marker) {
  color: #ff9a4d !important;
}

:is(.data-card, .event-card, .blog-page .content-card):hover > span:not(.check-marker)::before,
:is(.data-card, .event-card, .blog-page .content-card):focus-within > span:not(.check-marker)::before {
  border-color: #fff;
  background: #ff5a00;
  box-shadow: 0 0 0 7px rgba(255, 107, 0, .2), 0 0 24px rgba(255, 90, 0, .68);
  transform: scale(1.16);
}

.practice-day-cards p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: .93rem;
  line-height: 1.45;
}

.practice-poll {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid rgba(15, 45, 82, .12);
  border-radius: 14px;
  background: rgba(255, 255, 255, .9);
}

.practice-poll label {
  display: grid;
  gap: 7px;
  color: var(--blue);
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.practice-poll input,
.practice-poll select,
.practice-poll textarea {
  width: 100%;
  border: 1px solid rgba(15, 45, 82, .18);
  border-radius: 8px;
  padding: 12px 13px;
  color: var(--blue);
  background: #fff;
  font: inherit;
}

.practice-poll input:focus,
.practice-poll select:focus,
.practice-poll textarea:focus {
  outline: 3px solid rgba(243, 107, 23, .22);
  border-color: rgba(243, 107, 23, .62);
}

.legal-support {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding-top: clamp(26px, 4vw, 46px);
  padding-bottom: clamp(26px, 4vw, 46px);
  background:
    radial-gradient(circle at 12% 20%, rgba(243, 107, 23, .1), transparent 34%),
    linear-gradient(120deg, rgba(255, 255, 255, .96), rgba(239, 245, 250, .78));
}

.legal-support .section-disclosure,
.vacancies .section-disclosure {
  width: min(100%, 1180px);
  margin: 0 auto;
}

.legal-support-copy h2 {
  max-width: 740px;
}

.legal-support-copy p {
  max-width: 780px;
  color: var(--text);
  font-size: clamp(1rem, 1.65vw, 1.18rem);
}

.legal-note {
  margin-top: 14px;
  color: var(--muted) !important;
}

.section-disclosure .lawyer-card {
  margin: 0 clamp(18px, 3vw, 28px) clamp(22px, 4vw, 34px);
}

.lawyer-card {
  padding: clamp(24px, 4vw, 36px);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .92);
  box-shadow: var(--shadow);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.lawyer-card:hover,
.lawyer-card:focus-within {
  transform: translateY(-4px);
  border-color: rgba(243, 107, 23, .52);
  background: linear-gradient(120deg, rgba(255, 241, 231, .9), rgba(255, 255, 255, .98));
  box-shadow: var(--shadow-lift);
}

.lawyer-heading {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 26px;
}

.lawyer-heading img {
  width: 76px;
  height: 76px;
  object-fit: cover;
  border: 2px solid rgba(243, 107, 23, .34);
  border-radius: 50%;
  box-shadow: 0 14px 28px rgba(7, 27, 50, .1);
}

.lawyer-heading p {
  margin: 0 0 8px;
  color: var(--blue);
  font-weight: 900;
  text-transform: uppercase;
}

.lawyer-heading h3 {
  margin: 0;
  color: var(--muted);
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  font-weight: 600;
}

.lawyer-card > p {
  color: var(--text);
  font-size: clamp(1rem, 1.6vw, 1.16rem);
  line-height: 1.65;
}

.lawyer-card .button {
  width: 100%;
  margin-top: 12px;
}

.vacancies {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  padding-top: clamp(26px, 4vw, 46px);
  padding-bottom: clamp(26px, 4vw, 46px);
  background:
    radial-gradient(circle at 82% 18%, rgba(243, 107, 23, .1), transparent 32%),
    linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(255, 241, 231, .46));
}

.vacancy-intro p {
  max-width: 720px;
  color: var(--text);
  font-size: clamp(1rem, 1.6vw, 1.16rem);
}

.vacancy-content {
  padding: 0 clamp(22px, 4vw, 36px) clamp(24px, 4vw, 40px);
}

.vacancy-content ul {
  display: grid;
  gap: 12px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}

.vacancy-content li {
  padding-left: 18px;
  border-left: 4px solid var(--orange);
  color: var(--text);
}

.vacancy-content p {
  color: var(--muted);
}

.vacancy-content .button {
  margin-top: 8px;
}

.about-us {
  padding: clamp(48px, 6vw, 78px) 0;
  color: #fff;
  background:
    radial-gradient(circle at 76% 16%, rgba(255, 107, 0, .1), transparent 30%),
    linear-gradient(120deg, #08233f 0%, var(--navy) 48%, #173f67 100%);
}

.partnerships-info {
  padding-top: 12px;
  padding-bottom: 12px;
  color: #fff;
  background:
    radial-gradient(circle at 74% 50%, rgba(255, 107, 0, .08), transparent 28%),
    linear-gradient(120deg, #08233f 0%, var(--navy) 48%, #173f67 100%);
}

.about-us .section-intro {
  width: min(100% - 44px, 920px);
  margin: 0 auto clamp(22px, 3vw, 34px);
  text-align: center;
}

.about-us .section-kicker {
  color: #ffb17c;
}

.about-us h2 {
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.05;
}

.about-accordion-stack {
  width: min(100% - 44px, 920px);
  margin: 0 auto;
  display: grid;
  gap: 18px;
}

.about-copy {
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 10px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 16px 36px rgba(7, 27, 50, .18);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.about-copy:hover,
.about-copy:focus-within,
.about-copy[open] {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 0, .72);
  background: linear-gradient(120deg, rgba(255, 241, 231, .98), rgba(255, 255, 255, .98));
  box-shadow: 0 16px 36px rgba(255, 107, 0, .16), 0 18px 44px rgba(7, 27, 50, .16);
}

.about-copy summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 16px;
  min-height: 62px;
  padding: 14px clamp(18px, 3.5vw, 28px);
  color: var(--blue);
  cursor: pointer;
  font-size: clamp(.96rem, 1.15vw, 1.06rem);
  font-weight: 900;
  list-style: none;
}

.about-copy summary::-webkit-details-marker {
  display: none;
}

.about-copy summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #fff;
  background: var(--orange);
  font-size: 1.25rem;
  line-height: 1;
}

.about-copy:hover summary::after,
.about-copy:focus-within summary::after,
.about-copy[open] summary::after {
  background: #ff7a1f;
  box-shadow: 0 12px 26px rgba(255, 107, 0, .24);
}

.about-copy[open] summary::after {
  content: "-";
}

.about-copy-content {
  padding: 0 clamp(22px, 4vw, 36px) clamp(24px, 4vw, 40px);
}

.about-copy-content p {
  margin: 0;
  color: #36536f;
  font-size: clamp(1rem, 1.6vw, 1.16rem);
  line-height: 1.75;
}

.about-copy-content p + p {
  margin-top: 18px;
}

.inline-link {
  color: var(--orange);
  font-weight: 900;
  text-decoration: none;
}

.inline-link:hover,
.inline-link:focus-visible {
  color: #ff7a1f;
  text-decoration: underline;
}

.legal-section {
  padding-top: 12px;
  padding-bottom: clamp(46px, 6vw, 78px);
  background:
    radial-gradient(circle at 74% 0%, rgba(255, 107, 0, .08), transparent 28%),
    linear-gradient(120deg, #08233f 0%, var(--navy) 48%, #173f67 100%);
}

.legal-disclosure {
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 10px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 16px 36px rgba(7, 27, 50, .18);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.legal-disclosure:hover,
.legal-disclosure:focus-within,
.legal-disclosure[open] {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 0, .72);
  background: linear-gradient(120deg, rgba(255, 241, 231, .98), rgba(255, 255, 255, .98));
  box-shadow: 0 16px 36px rgba(255, 107, 0, .16), 0 18px 44px rgba(7, 27, 50, .16);
}

.legal-disclosure summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 16px;
  min-height: 62px;
  padding: 14px clamp(18px, 3.5vw, 28px);
  color: var(--blue);
  cursor: pointer;
  font-size: clamp(.96rem, 1.15vw, 1.06rem);
  font-weight: 900;
  list-style: none;
}

.legal-disclosure summary::-webkit-details-marker {
  display: none;
}

.legal-disclosure summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #fff;
  background: var(--orange);
  font-size: 1.25rem;
  line-height: 1;
}

.legal-disclosure:hover summary::after,
.legal-disclosure:focus-within summary::after,
.legal-disclosure[open] summary::after {
  background: #ff7a1f;
  box-shadow: 0 12px 26px rgba(255, 107, 0, .24);
}

.legal-disclosure[open] summary::after {
  content: "-";
}

.legal-content {
  padding: 0 clamp(20px, 4vw, 32px) clamp(22px, 4vw, 34px);
}

.legal-content h3 {
  margin: 22px 0 8px;
  color: var(--blue);
  font-size: 1rem;
}

.legal-content h3:first-child {
  margin-top: 0;
}

.legal-content p {
  margin: 0;
  color: var(--muted);
  font-size: .95rem;
  line-height: 1.65;
}

.legal-content p + p {
  margin-top: 10px;
}

footer {
  padding: 28px 22px;
  text-align: center;
  color: var(--blue);
  background: #fff;
  border-top: 1px solid var(--line);
}

.cookie-banner {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 50;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  width: min(720px, calc(100% - 44px));
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(120deg, rgba(13, 53, 91, .98), rgba(6, 29, 53, .98));
  box-shadow: 0 22px 55px rgba(6, 29, 53, .28);
}

.cookie-banner[hidden] {
  display: none;
}

.cookie-banner strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1rem;
}

.cookie-banner p {
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: .92rem;
  line-height: 1.55;
}

.cookie-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.cookie-button {
  min-height: 44px;
  padding: 0 18px;
  border: 2px solid transparent;
  border-radius: 5px;
  cursor: pointer;
  font: inherit;
  font-size: .86rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.cookie-button:hover,
.cookie-button:focus {
  transform: translateY(-2px);
}

.cookie-button.accept {
  color: #fff;
  background: var(--orange);
}

.cookie-button.decline {
  color: #fff;
  border-color: rgba(255, 255, 255, .5);
  background: transparent;
}

.cookie-settings-button {
  position: fixed;
  right: 14px;
  bottom: 14px;
  z-index: 1100;
  padding: 9px 12px;
  border: 1px solid rgba(15, 45, 82, .22);
  border-radius: 999px;
  color: var(--blue);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 8px 24px rgba(7, 27, 50, .12);
  font: inherit;
  font-size: .72rem;
  font-weight: 800;
  cursor: pointer;
}

.cookie-settings-button:hover,
.cookie-settings-button:focus-visible {
  border-color: var(--orange);
  color: var(--orange);
}

.article-page {
  background:
    radial-gradient(circle at 14% 4%, rgba(243, 107, 23, .09), transparent 30%),
    linear-gradient(180deg, #fff, var(--paper) 55%, var(--soft-blue));
}

.article-hero,
.article-section,
.source-strip {
  max-width: 1120px;
  margin: 0 auto;
}

.article-hero {
  padding: clamp(54px, 8vw, 110px) clamp(22px, 6vw, 72px) clamp(34px, 5vw, 64px);
}

.breadcrumb {
  display: inline-flex;
  gap: 8px;
  margin-bottom: 26px;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.article-hero h1 {
  max-width: 900px;
}

.article-hero .lead {
  max-width: 760px;
}

.article-section {
  padding: clamp(34px, 5vw, 70px) clamp(22px, 6vw, 72px);
}

.article-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 28px;
  align-items: start;
}

.article-card,
.data-card,
.faq details,
.source-strip {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .92);
  box-shadow: var(--shadow);
}

.article-card {
  padding: clamp(24px, 4vw, 38px);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.article-card:hover,
.article-card:focus-within {
  transform: translateY(-4px);
  border-color: rgba(243, 107, 23, .5);
  background:
    radial-gradient(circle at 88% 14%, rgba(243, 107, 23, .16), transparent 34%),
    rgba(255, 255, 255, .98);
  box-shadow: 0 24px 54px rgba(15, 45, 82, .14), 0 0 30px rgba(243, 107, 23, .12);
}

.article-card:hover .section-kicker,
.article-card:focus-within .section-kicker {
  color: var(--orange);
}

.article-card h2,
.article-card h3 {
  margin-top: 26px;
  max-width: 100%;
  font-size: clamp(1.75rem, 3vw, 3.1rem);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
  line-height: 1.12;
}

.article-card h2:first-child,
.article-card h3:first-child {
  margin-top: 0;
}

.article-card p,
.article-card li {
  color: var(--text);
}

.keyword-card h2 {
  font-size: clamp(1.35rem, 2vw, 2.05rem);
  line-height: 1.18;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
}

.keyword-card p {
  font-size: clamp(1rem, 1.35vw, 1.18rem);
}

.data-stack {
  display: grid;
  gap: 14px;
}

.data-card {
  padding: 22px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.data-card:hover,
.data-card:focus-within {
  transform: translateY(-4px);
  border-color: rgba(243, 107, 23, .55);
  background: linear-gradient(120deg, rgba(255, 241, 231, .95), rgba(255, 255, 255, .98));
  box-shadow: var(--shadow-lift);
}

.data-card span {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  color: var(--orange);
  border-radius: 999px;
  background: rgba(243, 107, 23, .1);
  font-size: 1.05rem;
  font-weight: 900;
  letter-spacing: 0;
}

.data-card:hover span,
.data-card:focus-within span {
  color: #fff;
  background: var(--orange);
  box-shadow: 0 0 0 6px rgba(243, 107, 23, .14);
}

.data-card strong {
  display: block;
  margin-top: 8px;
  color: var(--blue);
  font-size: clamp(1.45rem, 3vw, 2.4rem);
  line-height: 1;
}

.data-card p {
  color: var(--muted);
  line-height: 1.5;
}

/* Kennisbankthema's: inhoudelijke kaarten met dezelfde blauwe interactie als de homepage. */
.knowledge-theme-page .data-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-color: rgba(15, 45, 82, .14);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.knowledge-theme-page .data-card:hover,
.knowledge-theme-page .data-card:focus-within {
  transform: translateY(-5px);
  border-color: rgba(255, 107, 0, .7);
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 107, 0, .22), transparent 34%),
    linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 22px 48px rgba(15, 45, 82, .24), 0 0 0 1px rgba(255, 107, 0, .16);
}

.knowledge-theme-page .data-card span {
  display: inline-flex;
  width: auto;
  height: auto;
  min-height: 38px;
  padding: .5rem .78rem;
  border-radius: 999px;
  line-height: 1.1;
}

.knowledge-theme-page .data-card:hover span,
.knowledge-theme-page .data-card:focus-within span {
  color: #fff;
  background: var(--orange);
}

.knowledge-theme-page .data-card:hover strong,
.knowledge-theme-page .data-card:focus-within strong,
.knowledge-theme-page .data-card:hover p,
.knowledge-theme-page .data-card:focus-within p {
  color: #fff;
}

.partnertrainer-page .article-card h2 {
  font-size: clamp(1.75rem, 2.35vw, 2.55rem);
  line-height: 1.08;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: balance;
}

.partnertrainer-page .article-card,
.partnertrainer-page .data-card,
.partnertrainer-page .program-step {
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.partnertrainer-page .article-card:hover,
.partnertrainer-page .article-card:focus-within,
.partnertrainer-page .data-card:hover,
.partnertrainer-page .data-card:focus-within,
.partnertrainer-page .program-step:hover,
.partnertrainer-page .program-step:focus-within {
  transform: translateY(-6px);
  border-color: rgba(255, 107, 0, .72);
  background:
    radial-gradient(circle at 86% 10%, rgba(255, 107, 0, .22), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(255, 245, 236, .96));
  box-shadow: 0 28px 62px rgba(15, 45, 82, .16), 0 0 34px rgba(255, 107, 0, .18);
}

.partnertrainer-page .data-card span,
.partnertrainer-page .program-step > span {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  color: var(--orange);
  background: rgba(255, 107, 0, .11);
  font-size: 1.2rem;
  font-weight: 900;
  line-height: 1;
}

.partnertrainer-page .data-card:hover span,
.partnertrainer-page .data-card:focus-within span,
.partnertrainer-page .program-step:hover > span,
.partnertrainer-page .program-step:focus-within > span {
  color: #fff;
  background: var(--orange);
  box-shadow: 0 0 0 7px rgba(255, 107, 0, .16);
}

.partnertrainer-page .program-step {
  align-items: center;
  grid-template-columns: 58px minmax(0, 1fr);
}

.capacity-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--shadow);
}

.capacity-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  color: var(--blue);
  font-size: .96rem;
}

.capacity-table th,
.capacity-table td {
  padding: 16px 18px;
  border-bottom: 1px solid rgba(15, 45, 82, .1);
  text-align: left;
}

.capacity-table th {
  color: var(--orange);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: linear-gradient(120deg, rgba(255, 241, 231, .85), rgba(245, 249, 252, .92));
}

.capacity-table td:nth-child(3),
.capacity-table td:nth-child(4),
.capacity-table td:nth-child(5) {
  font-weight: 900;
}

.capacity-table tr:hover {
  background: linear-gradient(120deg, rgba(255, 241, 231, .72), rgba(255, 255, 255, .98));
}

.table-note {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: .92rem;
}

.data-stack-horizontal {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.article-image-card {
  overflow: hidden;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--shadow);
}

.article-image-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 11;
  object-fit: cover;
}

.article-image-card figcaption {
  padding: 12px 16px;
  color: var(--muted);
  font-size: .88rem;
  font-weight: 700;
}

.infographic-card {
  overflow: hidden;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(3, 30, 58, .96), rgba(15, 45, 82, .9));
  box-shadow: var(--shadow);
}

.infographic-card a {
  display: block;
  padding: clamp(10px, 2vw, 18px);
}

.infographic-card img {
  display: block;
  width: 100%;
  max-height: 820px;
  object-fit: contain;
  border-radius: 12px;
  transition: filter .2s ease, transform .2s ease;
}

.infographic-card:hover img,
.infographic-card:focus-within img {
  filter: saturate(1.08) contrast(1.04);
  transform: scale(1.01);
}

.infographic-card figcaption {
  padding: 0 clamp(16px, 2.5vw, 24px) clamp(16px, 2.5vw, 22px);
  color: rgba(255, 255, 255, .82);
  font-weight: 800;
}

.download-gate {
  margin-top: 18px;
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid rgba(255, 107, 0, .28);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 10%, rgba(255, 107, 0, .18), transparent 32%),
    #fff;
  box-shadow: var(--shadow);
}

.download-gate label {
  display: block;
  margin-bottom: 12px;
  color: var(--blue);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.download-gate > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.download-gate input {
  min-height: 54px;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0 16px;
  color: var(--blue);
  font: inherit;
  font-weight: 700;
}

.download-gate p {
  margin: 16px 0 0;
  color: var(--blue);
  font-weight: 800;
}

.download-gate p a {
  color: var(--orange);
}

.download-gate small {
  display: block;
  margin-top: 12px;
  color: var(--muted);
  line-height: 1.5;
}

.source-strip {
  padding: 24px clamp(22px, 6vw, 72px);
  margin-bottom: clamp(42px, 6vw, 76px);
}

.source-strip ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  padding-left: 18px;
}

.source-strip a {
  color: var(--blue);
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(243, 107, 23, .45);
  text-underline-offset: 4px;
}

.faq {
  display: grid;
  gap: 12px;
}

.faq details {
  padding: 18px 20px;
}

.faq summary {
  cursor: pointer;
  color: var(--blue);
  font-weight: 900;
}

.article-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.program-hero h1 {
  max-width: 980px;
}

.classroom-hero {
  border-bottom: 1px solid rgba(243, 107, 23, .18);
  background:
    radial-gradient(circle at 82% 16%, rgba(243, 107, 23, .14), transparent 28%),
    radial-gradient(circle at 12% 78%, rgba(15, 45, 82, .08), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(239, 245, 250, .92));
}

.cyber-hero {
  border-bottom: 1px solid rgba(243, 107, 23, .2);
  background:
    radial-gradient(circle at 82% 20%, rgba(243, 107, 23, .18), transparent 28%),
    radial-gradient(circle at 18% 76%, rgba(15, 45, 82, .1), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, .99), rgba(235, 242, 248, .94));
}

.signal-pill-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.signal-pill-grid span {
  padding: 10px 14px;
  border: 1px solid rgba(243, 107, 23, .25);
  border-radius: 999px;
  color: var(--blue);
  background: rgba(255, 255, 255, .82);
  font-size: .86rem;
  font-weight: 900;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.signal-pill-grid span:hover {
  transform: translateY(-3px);
  border-color: rgba(243, 107, 23, .62);
  background: rgba(255, 241, 231, .96);
}

.program-list {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.program-list li {
  padding-left: 18px;
  border-left: 4px solid var(--orange);
}

.program-timeline {
  display: grid;
  gap: 14px;
}

.program-step {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 20px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .92);
  box-shadow: var(--shadow);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.program-step:hover,
.program-step:focus-within {
  transform: translateY(-3px);
  border-color: rgba(243, 107, 23, .5);
  box-shadow: var(--shadow-lift);
}

.program-step time {
  color: var(--orange);
  font-size: 1.25rem;
  font-weight: 900;
}

.program-step h3 {
  margin: 0 0 8px;
}

.program-step p {
  margin: 0;
  color: var(--muted);
}

/* Blogkaarten: rustige typografie, duidelijke vinkjes en consistente interactie. */
.blog-page .content-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 16px;
  align-items: stretch;
}

.blog-page .content-card {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 22px;
  border: 1px solid rgba(15, 45, 82, .14);
  border-radius: 14px;
  color: var(--blue);
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--shadow);
  text-decoration: none;
  text-transform: none;
  letter-spacing: normal;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.blog-page .content-card span {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 4px;
  padding: .34rem .58rem;
  border-radius: 999px;
  color: var(--orange);
  background: rgba(255, 107, 0, .09);
  font-size: .82rem;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .02em;
  text-transform: none;
}

.blog-page .content-card strong {
  display: block;
  width: 100%;
  margin: 0;
  color: var(--blue);
  font-size: clamp(1rem, 1.6vw, 1.14rem);
  font-weight: 700;
  line-height: 1.48;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.blog-page .content-card:hover,
.blog-page .content-card:focus-within,
.blog-page .data-card:hover,
.blog-page .data-card:focus-within,
.blog-page .program-step:hover,
.blog-page .program-step:focus-within {
  transform: translateY(-4px);
  border-color: rgba(255, 107, 0, .7);
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 107, 0, .2), transparent 34%),
    linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 22px 48px rgba(15, 45, 82, .22), 0 0 0 1px rgba(255, 107, 0, .14);
}

.blog-page .content-card:hover span,
.blog-page .content-card:focus-within span {
  color: #ffb277;
  background: rgba(255, 255, 255, .1);
}

.blog-page .content-card:hover strong,
.blog-page .content-card:focus-within strong,
.blog-page .data-card:hover strong,
.blog-page .data-card:focus-within strong,
.blog-page .data-card:hover p,
.blog-page .data-card:focus-within p,
.blog-page .program-step:hover h3,
.blog-page .program-step:focus-within h3,
.blog-page .program-step:hover p,
.blog-page .program-step:focus-within p {
  color: #fff;
}

.blog-page .program-step {
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
}

.blog-page .program-step time,
.blog-page .data-card .check-marker {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0;
  padding: 0;
  border-radius: 999px;
  color: var(--orange) !important;
  border: 1px solid rgba(255, 107, 0, .42);
  background: #eaf4fb;
  box-shadow: 0 0 0 6px rgba(255, 107, 0, .08), 0 0 22px rgba(255, 107, 0, .18);
  font-size: 1.15rem;
  font-weight: 900;
  line-height: 1;
}

.blog-page .data-card strong {
  max-width: 100%;
  font-size: clamp(1.25rem, 2.1vw, 1.75rem);
  line-height: 1.16;
  letter-spacing: -.015em;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

.blog-page .program-step:hover time,
.blog-page .program-step:focus-within time,
.blog-page .data-card:hover .check-marker,
.blog-page .data-card:focus-within .check-marker {
  color: #fff !important;
  border-color: var(--orange);
  background: var(--orange);
  box-shadow: 0 0 0 6px rgba(255, 255, 255, .08), 0 0 24px rgba(255, 107, 0, .42);
}

.blog-page :is(.content-card, .data-card, .program-step) :is(h2, h3, strong, p, span) {
  text-transform: none;
  word-spacing: normal;
}

@media (max-width: 720px) {
  .blog-page .content-grid {
    grid-template-columns: 1fr;
  }

  .blog-page .content-card {
    padding: 18px;
  }

  .blog-page .program-step {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
  }
}

/* Trainingspagina's: consistente vinkjes en professionele blauwe interactie. */
.training-page .program-step {
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
}

.training-page .program-step .check-marker,
.training-page .data-card .check-marker {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0;
  padding: 0;
  border-radius: 999px;
  color: var(--orange) !important;
  border: 1px solid rgba(255, 107, 0, .42);
  background: #eaf4fb;
  box-shadow: 0 0 0 6px rgba(255, 107, 0, .08), 0 0 22px rgba(255, 107, 0, .18);
  font-size: 1.15rem;
  font-weight: 900;
  line-height: 1;
}

.training-page :is(.program-step, .data-card, .event-card, .topic-mini-grid article, .content-card) {
  min-width: 0;
  overflow: hidden;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.training-page :is(.program-step, .data-card, .event-card, .topic-mini-grid article, .content-card):hover,
.training-page :is(.program-step, .data-card, .event-card, .topic-mini-grid article, .content-card):focus-within {
  transform: translateY(-4px);
  border-color: rgba(255, 107, 0, .7);
  background:
    radial-gradient(circle at 88% 12%, rgba(255, 107, 0, .2), transparent 34%),
    linear-gradient(135deg, #173b63, #245b88);
  box-shadow: 0 22px 48px rgba(15, 45, 82, .22), 0 0 0 1px rgba(255, 107, 0, .14);
}

.training-page :is(.program-step, .data-card, .event-card, .topic-mini-grid article, .content-card):hover :is(h2, h3, strong, p, span),
.training-page :is(.program-step, .data-card, .event-card, .topic-mini-grid article, .content-card):focus-within :is(h2, h3, strong, p, span) {
  color: #fff;
}

.training-page :is(.program-step, .data-card):hover .check-marker,
.training-page :is(.program-step, .data-card):focus-within .check-marker {
  color: #fff !important;
  border-color: var(--orange);
  background: var(--orange);
  box-shadow: 0 0 0 6px rgba(255, 255, 255, .08), 0 0 24px rgba(255, 107, 0, .42);
}

.training-page :is(.event-card, .content-card):hover a,
.training-page :is(.event-card, .content-card):focus-within a {
  color: #ffb277;
}

/* Uniforme professionele interactie voor alle trainingspagina's. */
.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step) {
  position: relative;
  isolation: isolate;
  border-color: rgba(15, 45, 82, .16);
  background: linear-gradient(145deg, #ffffff, #f5f9fd);
  box-shadow: 0 12px 30px rgba(15, 45, 82, .09);
}

.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step)::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(74, 167, 224, .38), transparent 34%),
    linear-gradient(135deg, #0f2d52 0%, #174b78 58%, #1976ad 100%);
  transition: opacity .24s ease;
}

.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step):hover,
.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step):focus-within {
  transform: translateY(-5px);
  border-color: rgba(53, 157, 220, .9);
  background: transparent;
  box-shadow: 0 22px 46px rgba(15, 45, 82, .25), 0 0 0 2px rgba(74, 167, 224, .12);
}

.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step):hover::before,
.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step):focus-within::before {
  opacity: 1;
}

.training-page .data-card > span,
.training-page .event-card > span {
  width: auto;
  min-width: 42px;
  height: auto;
  min-height: 42px;
  padding: 8px 13px;
  border: 1px solid rgba(53, 157, 220, .32);
  border-radius: 999px;
  color: #0f4f7b;
  background: #e4f3fc;
  box-shadow: 0 0 0 6px rgba(53, 157, 220, .07);
  font-size: .82rem;
  line-height: 1.15;
  letter-spacing: .04em;
  text-align: center;
  white-space: nowrap;
}

.training-page :is(.data-card, .event-card):hover > span,
.training-page :is(.data-card, .event-card):focus-within > span {
  color: #fff;
  border-color: rgba(255, 255, 255, .55);
  background: #238bc5;
  box-shadow: 0 0 0 6px rgba(255, 255, 255, .09), 0 0 24px rgba(74, 167, 224, .38);
}

.training-page .program-step time {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 58px;
  height: 58px;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid rgba(53, 157, 220, .36);
  border-radius: 999px;
  color: #0f4f7b;
  background: #e4f3fc;
  box-shadow: 0 0 0 6px rgba(53, 157, 220, .07);
  font-size: .82rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.035em;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .22s ease, box-shadow .22s ease;
}

.training-page .program-step time::after {
  content: "✓";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff;
  opacity: 0;
  transform: scale(.35) rotate(-18deg);
  transition: opacity .18s ease, transform .24s cubic-bezier(.2,.8,.2,1.25);
}

.training-page .program-step:hover time,
.training-page .program-step:focus-within time {
  color: transparent;
  border-color: #54b7ec;
  background: #238bc5;
  box-shadow: 0 0 0 7px rgba(255, 255, 255, .1), 0 0 26px rgba(74, 167, 224, .5);
  transform: scale(1.08);
}

.training-page .program-step:hover time::after,
.training-page .program-step:focus-within time::after {
  opacity: 1;
  transform: scale(1) rotate(0);
}

.training-page .program-step .check-marker {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(53, 157, 220, .42);
  border-radius: 999px;
  color: #0f5d8e !important;
  background: #e4f3fc;
  box-shadow: 0 0 0 6px rgba(53, 157, 220, .07);
  font-size: 1.1rem;
  font-weight: 900;
  line-height: 1;
  transform: scale(.94);
  transition: transform .24s cubic-bezier(.2,.8,.2,1.25), color .18s ease, background .18s ease, border-color .18s ease, box-shadow .22s ease;
}

.training-page .program-step:hover .check-marker,
.training-page .program-step:focus-within .check-marker {
  color: #fff !important;
  border-color: #69c4f1;
  background: #238bc5;
  box-shadow: 0 0 0 7px rgba(255, 255, 255, .1), 0 0 28px rgba(74, 167, 224, .55);
  transform: scale(1.14);
}

.training-page .signal-pill-grid span {
  border-color: rgba(53, 157, 220, .3);
  color: #0f4f7b;
  background: #eaf6fd;
  box-shadow: 0 8px 18px rgba(15, 45, 82, .07);
}

.training-page .signal-pill-grid span:hover {
  transform: translateY(-3px);
  border-color: #54b7ec;
  color: #fff;
  background: #1976ad;
  box-shadow: 0 12px 24px rgba(25, 118, 173, .25);
}

/* Trainingspagina's: nooit woorden afbreken in koppen of kernlabels. */
.training-page :is(h1, h2, h3, strong, .section-kicker, .eyebrow, .signal-pill-grid span) {
  -webkit-hyphens: none;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.training-page .article-hero h1 {
  max-width: 24ch;
  font-size: clamp(2rem, 4.25vw, 4.35rem);
  line-height: 1.06;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.training-page .section-intro h2 {
  max-width: 25ch;
  font-size: clamp(1.85rem, 3.35vw, 3.35rem);
  line-height: 1.08;
  letter-spacing: -.028em;
  text-wrap: balance;
}

.training-page .article-card :is(h2, h3) {
  max-width: 26ch;
  font-size: clamp(1.55rem, 2.35vw, 2.35rem);
  line-height: 1.12;
  letter-spacing: -.02em;
  text-wrap: balance;
}

.training-page :is(.event-card, .topic-mini-grid article, .program-step) h3 {
  font-size: clamp(1.08rem, 1.55vw, 1.35rem);
  line-height: 1.22;
  text-wrap: balance;
}

@media (max-width: 620px) {
  .expertteam-page-link {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .training-page .article-hero h1 {
    font-size: clamp(1.72rem, 7.8vw, 2.35rem);
    line-height: 1.08;
  }

  .training-page .section-intro h2 {
    font-size: clamp(1.62rem, 7.4vw, 2.2rem);
  }

  .training-page .article-card :is(h2, h3) {
    font-size: clamp(1.42rem, 6.5vw, 1.95rem);
  }
}

.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step):hover :is(h2, h3, strong, p),
.training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step):focus-within :is(h2, h3, strong, p) {
  color: #fff;
}

@media (prefers-reduced-motion: reduce) {
  .training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step),
  .training-page :is(.data-card, .event-card, .topic-mini-grid article, .program-step)::before,
  .training-page .program-step time,
  .training-page .program-step time::after {
    transition-duration: .01ms !important;
  }
}

@media (max-width: 720px) {
  .training-page .program-step {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
  }
}

.event-grid,
.topic-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.event-card,
.topic-mini-grid article,
.source-note {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .92);
  box-shadow: var(--shadow);
}

.event-card,
.topic-mini-grid article {
  padding: 24px;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.event-card:hover,
.event-card:focus-within,
.topic-mini-grid article:hover,
.topic-mini-grid article:focus-within {
  transform: translateY(-5px);
  border-color: rgba(243, 107, 23, .55);
  background: linear-gradient(120deg, rgba(255, 241, 231, .95), rgba(255, 255, 255, .98));
  box-shadow: var(--shadow-lift);
}

.event-card span {
  color: var(--orange);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.event-card h3,
.topic-mini-grid h3 {
  margin: 10px 0;
}

.event-card p,
.topic-mini-grid p {
  color: var(--muted);
}

.event-card a {
  color: var(--blue);
  font-weight: 900;
  text-decoration-color: rgba(243, 107, 23, .55);
  text-underline-offset: 4px;
}

.source-note {
  padding: clamp(24px, 4vw, 40px);
}

.source-note ul {
  display: grid;
  gap: 10px;
  padding-left: 20px;
}

.source-note a {
  color: var(--blue);
  font-weight: 900;
}

.program-contact {
  max-width: 1120px;
  margin: 0 auto clamp(44px, 7vw, 86px);
}

@media (max-width: 980px) {
  .topbar,
  .hero,
  .split,
  .contact,
  .practice-day,
  .legal-support,
  .vacancies {
    grid-template-columns: 1fr;
  }

  .topbar {
    justify-items: center;
  }

  .site-search {
    width: min(460px, 100%);
  }

  .training-list,
  .audience-grid,
  .approach-grid,
  .topic-grid,
  .practice-day-cards,
  .mini-custom {
    grid-template-columns: 1fr;
  }

  .hero {
    min-height: auto;
    padding-top: 34px;
  }

  .hero-image-card {
    max-width: none;
    justify-self: stretch;
  }

  .map-insight-card {
    max-width: none;
    justify-self: stretch;
  }

  .article-grid,
  .source-strip ul,
  .event-grid,
  .topic-mini-grid,
  .blog-card,
  .data-stack-horizontal {
    grid-template-columns: 1fr;
  }

  .partnertrainer-callout {
    align-items: flex-start;
    flex-direction: column;
  }

  .education-callout {
    align-items: flex-start;
    flex-direction: column;
  }

  .partnertrainer-callout .button {
    width: 100%;
    justify-content: center;
  }

  .education-callout .button {
    width: 100%;
    justify-content: center;
  }

  .blog-card span,
  .blog-card strong,
  .blog-card small {
    grid-column: auto;
  }

  .download-gate > div {
    grid-template-columns: 1fr;
  }

  .download-gate .button {
    width: 100%;
  }

  .infographic-card img {
    max-height: none;
  }
}

@media (max-width: 620px) {
  .blog-collapsible summary {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .blog-collapsible summary b {
    justify-self: stretch;
    text-align: center;
  }

  .blog-strip {
    grid-auto-columns: minmax(245px, 86vw);
  }

  .topbar {
    position: static;
    padding: 16px;
  }

  .brand img {
    width: 150px;
  }

  nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    gap: 8px;
  }

  nav a {
    display: grid;
    min-height: 38px;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 5px;
    background: rgba(255, 255, 255, .72);
    text-align: center;
  }

  .site-search {
    width: 100%;
  }

  .top-cta,
  .button,
  .lawyer-card .button {
    width: 100%;
  }

  .mini-custom {
    margin-inline: 16px;
    padding: 24px 18px;
    border-radius: 14px;
  }

  .mini-custom h2 {
    font-size: clamp(1.45rem, 7vw, 2rem);
  }

  .mini-benefits article {
    grid-template-columns: 28px minmax(0, 1fr);
    padding: 14px;
  }

  h1 {
    font-size: clamp(1.55rem, 6.3vw, 2.15rem);
  }

  .hero-panel div {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .hero-image-card {
    border-radius: 12px;
  }

  .hero-image-card img {
    aspect-ratio: 16 / 11;
  }

  .hero-image-card figcaption {
    position: static;
    padding: 15px;
    background: var(--blue);
    backdrop-filter: none;
  }

  .map-insight-card {
    padding: 18px;
    padding-top: 62px;
  }

  .map-card-logo {
    top: 14px;
    right: 14px;
    width: min(132px, 46%);
    padding: 7px 9px;
  }

  .map-stage {
    min-height: 235px;
  }

  .nl-outline {
    inset: 18px 13% 18px 13%;
    width: 74%;
  }

  .province-dot {
    width: 27px;
    height: 27px;
    border-width: 1px;
    font-size: .55rem;
  }

  .province-dot::after {
    display: none;
  }

  .magnifier {
    width: 62px;
    height: 62px;
    border-width: 4px;
  }

  .magnifier::after {
    right: -26px;
    bottom: -15px;
    width: 36px;
    height: 6px;
  }

  .map-stats {
    grid-template-columns: 1fr;
  }

  @keyframes scanAcross {
    0%, 100% { transform: translateX(0); opacity: .25; }
    50% { transform: translateX(190px); opacity: .9; }
  }

  @keyframes magnifyRoute {
    0%, 100% { transform: translate(0, 0) scale(.95); }
    25% { transform: translate(84px, 24px) scale(1.02); }
    50% { transform: translate(42px, 104px) scale(1.08); }
    75% { transform: translate(116px, 136px) scale(1.02); }
  }

  .training-list summary {
    grid-template-columns: 42px minmax(0, 1fr) 28px;
    gap: 12px;
    padding: 20px 18px;
  }

  .training-list strong {
    font-size: .98rem;
  }

  .training-list p {
    padding: 0 18px 22px 72px;
  }

  .training-list .training-availability {
    margin: -8px 18px 22px 72px;
    padding: 11px 12px;
    font-size: .88rem;
  }

  .inline-program-link {
    margin-left: 72px;
  }

  .program-step {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 18px;
  }

  .cookie-banner {
    right: 12px;
    bottom: 12px;
    grid-template-columns: 1fr;
    width: calc(100% - 24px);
    padding: 18px;
  }

  .cookie-actions,
  .cookie-button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .incident,
  .scan-line,
  .magnifier {
    animation: none;
  }
}

.signal-map-band {
  padding: clamp(42px, 6vw, 86px) clamp(18px, 6vw, 96px);
  background:
    radial-gradient(circle at 16% 10%, rgba(255, 255, 255, .08), transparent 32%),
    radial-gradient(circle at 84% 78%, rgba(243, 107, 23, .15), transparent 30%),
    linear-gradient(135deg, #061d35 0%, #123e69 100%);
  color: #fff;
}

.signal-map-card {
  display: grid;
  grid-template-columns: minmax(230px, .72fr) minmax(360px, 1.35fr);
  gap: clamp(20px, 3.2vw, 44px);
  align-items: center;
  width: min(100%, 1420px);
  margin: 0 auto;
  padding: clamp(24px, 3.6vw, 44px);
  border-color: rgba(255, 255, 255, .18);
  border-radius: 18px;
  background:
    radial-gradient(circle at 88% 12%, rgba(243, 107, 23, .26), transparent 28%),
    linear-gradient(145deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .035));
  box-shadow: 0 32px 74px rgba(0, 0, 0, .22);
}

.signal-map-card .map-card-logo {
  position: static;
  grid-column: 1;
  justify-self: start;
  align-self: end;
  width: min(178px, 76%);
  margin: 0 0 clamp(10px, 2vw, 18px);
  opacity: .94;
}

.signal-map-card .map-copy {
  grid-column: 1;
  display: grid;
  gap: 8px;
}

.signal-map-card .map-copy .section-kicker {
  margin-bottom: 2px;
  color: var(--orange);
}

.signal-map-card .map-copy p:not(.section-kicker) {
  max-width: 430px;
  color: rgba(255, 255, 255, .78);
  font-size: clamp(1rem, 1.4vw, 1.18rem);
  line-height: 1.55;
}

.signal-map-card .map-stage {
  grid-column: 2;
  grid-row: 1 / span 2;
  min-height: clamp(320px, 34vw, 500px);
  border-radius: 16px;
  background-size: 52px 52px, 52px 52px, auto, auto;
}

.signal-map-card .map-stats {
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.signal-map-card .map-stats div {
  padding: 18px 20px;
  background: rgba(255, 255, 255, .1);
}

.signal-map-card .map-stats strong {
  font-size: clamp(.98rem, 1.25vw, 1.18rem);
}

@media (max-width: 980px) {
  .hero-centered {
    padding-inline: clamp(18px, 6vw, 44px);
  }

  .signal-map-card {
    grid-template-columns: 1fr;
  }

  .signal-map-card .map-card-logo,
  .signal-map-card .map-copy,
  .signal-map-card .map-stage,
  .signal-map-card .map-stats {
    grid-column: 1;
    grid-row: auto;
  }

  .signal-map-card .map-card-logo,
  .signal-map-card .map-copy {
    justify-self: center;
    text-align: center;
  }

  .signal-map-card .map-stage {
    min-height: clamp(300px, 64vw, 430px);
  }
}

@media (max-width: 620px) {
  .hero-centered h1 {
    font-size: clamp(1.85rem, 9vw, 2.8rem);
  }

  .signal-map-band {
    padding: 28px 14px 34px;
  }

  .signal-map-card {
    padding: 20px;
    border-radius: 16px;
  }

  .signal-map-card .map-card-logo {
    width: min(150px, 58%);
  }

  .signal-map-card .map-stage {
    min-height: 300px;
  }

  .signal-map-card .map-stats {
    grid-template-columns: 1fr;
  }
}

/* Rustige eerste indruk: compactere, gecentreerde homepage-intro. */
.hero.hero-centered {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  min-height: auto;
  padding: clamp(28px, 4.4vw, 58px) clamp(18px, 6vw, 88px) clamp(30px, 4.6vw, 62px);
  text-align: center;
  background:
    radial-gradient(circle at 50% 0%, rgba(243, 107, 23, .11), transparent 34%),
    radial-gradient(circle at 82% 42%, rgba(18, 54, 93, .06), transparent 34%);
}

.hero.hero-centered .hero-content {
  width: min(100%, 980px);
  max-width: 980px;
  margin: 0 auto;
}

.hero.hero-centered .eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  margin: 0 auto clamp(14px, 2vw, 20px);
  padding: 8px 14px;
  border: 1px solid rgba(243, 107, 23, .22);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 12px 26px rgba(7, 27, 50, .045);
  font-size: clamp(.64rem, .78vw, .78rem);
  letter-spacing: .13em;
}

.hero.hero-centered h1 {
  max-width: 900px;
  margin: 0 auto;
  font-size: clamp(2.05rem, 4.05vw, 4.15rem);
  line-height: 1.04;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.hero.hero-centered .lead {
  max-width: 760px;
  margin: clamp(18px, 2.3vw, 24px) auto 0;
  color: #3d5872;
  font-size: clamp(1rem, 1.3vw, 1.18rem);
  line-height: 1.62;
  text-wrap: pretty;
}

.hero.hero-centered .hero-detail {
  max-width: 720px;
  margin-top: 10px;
  color: #587087;
  font-size: clamp(.94rem, 1.12vw, 1.06rem);
  line-height: 1.58;
}

.hero.hero-centered .hero-actions {
  justify-content: center;
  gap: 12px;
  margin-top: clamp(22px, 3vw, 30px);
}

.hero.hero-centered .button {
  min-width: min(100%, 230px);
  min-height: 48px;
  padding: 13px 22px;
  border-radius: 8px;
  font-size: .76rem;
}

@media (max-width: 760px) {
  .hero.hero-centered {
    padding-top: 26px;
    padding-bottom: 34px;
  }

  .hero.hero-centered h1 {
    max-width: 620px;
    font-size: clamp(2rem, 8.2vw, 3.25rem);
    line-height: 1.08;
  }

  .hero.hero-centered .lead {
    max-width: 560px;
  }

  .hero.hero-centered .hero-detail {
    margin-top: 8px;
    font-size: .94rem;
  }
}

@media (max-width: 520px) {
  .hero.hero-centered {
    padding-inline: 16px;
  }

  .hero.hero-centered .eyebrow {
    font-size: .62rem;
    line-height: 1.35;
    white-space: normal;
  }

  .hero.hero-centered h1 {
    font-size: clamp(1.85rem, 9vw, 2.55rem);
  }

  .hero.hero-centered .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: min(100%, 360px);
    margin-right: auto;
    margin-left: auto;
  }

  .hero.hero-centered .button {
    width: 100%;
  }
}

/* Compacte signalenkaart: lager, breder en rustiger onder de intro. */
.signal-map-band {
  padding: clamp(18px, 2.4vw, 32px) clamp(16px, 6vw, 88px) clamp(24px, 3vw, 40px);
}

.signal-map-band .signal-map-card {
  width: min(100%, 1240px);
  max-width: 1240px;
  min-height: 0;
  grid-template-columns: minmax(210px, .78fr) minmax(420px, 1.38fr) minmax(220px, .68fr);
  grid-template-rows: auto;
  gap: clamp(18px, 2.2vw, 30px);
  align-items: center;
  padding: clamp(18px, 2.2vw, 30px);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 20px 48px rgba(0, 0, 0, .18);
}

.signal-map-band .signal-map-card .map-card-logo {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
  justify-self: start;
  width: clamp(112px, 9vw, 148px);
  margin: 0 0 14px;
}

.signal-map-band .signal-map-card .map-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  padding-top: 58px;
}

.signal-map-band .signal-map-card .map-copy p:not(.section-kicker) {
  max-width: 31ch;
  font-size: clamp(.88rem, .95vw, 1rem);
  line-height: 1.5;
}

.signal-map-band .signal-map-card .map-stage {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  height: clamp(220px, 18vw, 285px);
  min-height: 0;
  background-size: 44px 44px, 44px 44px, auto, auto;
  overflow: hidden;
}

.signal-map-band .signal-map-card .map-stage svg {
  max-height: 100%;
}

.signal-map-band .signal-map-card .map-stats {
  grid-column: 3;
  grid-row: 1;
  align-self: stretch;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.signal-map-band .signal-map-card .map-stats div {
  display: flex;
  min-height: 92px;
  flex-direction: column;
  justify-content: center;
  padding: 16px 18px;
}

@media (max-width: 1060px) {
  .signal-map-band .signal-map-card {
    grid-template-columns: minmax(190px, .85fr) minmax(360px, 1.35fr);
  }

  .signal-map-band .signal-map-card .map-stage {
    grid-column: 2;
  }

  .signal-map-band .signal-map-card .map-stats {
    grid-column: 1 / -1;
    grid-row: 2;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .signal-map-band {
    padding: 18px 14px 28px;
  }

  .signal-map-band .signal-map-card {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .signal-map-band .signal-map-card .map-card-logo,
  .signal-map-band .signal-map-card .map-copy,
  .signal-map-band .signal-map-card .map-stage,
  .signal-map-band .signal-map-card .map-stats {
    grid-column: 1;
    grid-row: auto;
  }

  .signal-map-band .signal-map-card .map-card-logo,
  .signal-map-band .signal-map-card .map-copy {
    justify-self: center;
    text-align: center;
  }

  .signal-map-band .signal-map-card .map-copy {
    padding-top: 0;
  }

  .signal-map-band .signal-map-card .map-copy p:not(.section-kicker) {
    max-width: 38ch;
  }

  .signal-map-band .signal-map-card .map-stage {
    height: clamp(210px, 58vw, 310px);
  }

  .signal-map-band .signal-map-card .map-stats {
    grid-template-columns: 1fr;
  }
}

/* Signalenkaart: gecentreerd logo en wisselende scan-thema's */
.signal-card .brand-badge,
.signal-map-card .brand-badge,
.signalenkaart-card .brand-badge,
.map-card .brand-badge,
.signal-card .signal-logo,
.signal-map-card .signal-logo,
.signalenkaart-card .signal-logo,
.map-card .signal-logo,
.signal-card .map-card-logo,
.signal-map-card .map-card-logo,
.signalenkaart-card .map-card-logo,
.map-card .map-card-logo {
  position: static !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto clamp(14px, 1.5vw, 22px) !important;
  text-align: center;
}

.signal-card img[src*="logo"],
.signal-map-card img[src*="logo"],
.signalenkaart-card img[src*="logo"],
.signal-map img[src*="logo"],
.hero-signal-card img[src*="logo"],
.map-card img[src*="logo"] {
  display: block;
  width: clamp(128px, 11vw, 168px) !important;
  max-width: min(48%, 168px) !important;
  height: auto !important;
  margin: 0 auto clamp(14px, 1.5vw, 22px) !important;
  object-fit: contain;
}

.scan-topic {
  display: grid;
  min-height: 1.18em;
  align-items: center;
  overflow: hidden;
  perspective: 520px;
}

.scan-topic span {
  grid-area: 1 / 1;
  opacity: 0;
  transform: translateY(70%) rotateX(-68deg);
  transform-origin: center;
  animation: scanTopicRotate 15s infinite;
  white-space: nowrap;
  line-height: 1.08;
}

.scan-topic span:nth-child(1) { animation-delay: 0s; }
.scan-topic span:nth-child(2) { animation-delay: 3s; }
.scan-topic span:nth-child(3) { animation-delay: 6s; }
.scan-topic span:nth-child(4) { animation-delay: 9s; }
.scan-topic span:nth-child(5) { animation-delay: 12s; }

@keyframes scanTopicRotate {
  0%, 9% { opacity: 0; transform: translateY(70%) rotateX(-68deg); }
  13%, 29% { opacity: 1; transform: translateY(0) rotateX(0); }
  33%, 100% { opacity: 0; transform: translateY(-70%) rotateX(68deg); }
}

@media (max-width: 760px) {
  .signal-card img[src*="logo"],
  .signal-map-card img[src*="logo"],
  .signalenkaart-card img[src*="logo"],
  .signal-map img[src*="logo"],
  .hero-signal-card img[src*="logo"],
  .map-card img[src*="logo"] {
    width: 136px !important;
    max-width: 58% !important;
  }

  .scan-topic span {
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .scan-topic span {
    animation: none;
    opacity: 0;
    transform: none;
  }

  .scan-topic span:first-child { opacity: 1; }
}

/* Definitieve kaartlabelweergave na alle pagina-specifieke stijlen. */
.data-card > span:not(.check-marker),
.event-card > span:not(.check-marker),
.blog-page .content-card > span:not(.check-marker) {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #f36b17 !important;
  background: transparent !important;
  box-shadow: none !important;
  white-space: normal !important;
  transform: none !important;
}

.data-card > span:not(.check-marker)::before,
.event-card > span:not(.check-marker)::before,
.blog-page .content-card > span:not(.check-marker)::before {
  content: "";
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  border: 2px solid rgba(243, 107, 23, .6);
  border-radius: 50%;
  background: #fff1e7;
  box-shadow: 0 0 0 5px rgba(243, 107, 23, .08);
}

:is(.data-card, .event-card, .blog-page .content-card):hover > span:not(.check-marker),
:is(.data-card, .event-card, .blog-page .content-card):focus-within > span:not(.check-marker) {
  color: #ff9a4d !important;
}

:is(.data-card, .event-card, .blog-page .content-card):hover > span:not(.check-marker)::before,
:is(.data-card, .event-card, .blog-page .content-card):focus-within > span:not(.check-marker)::before {
  border-color: #fff;
  background: #ff5a00;
  box-shadow: 0 0 0 7px rgba(255, 107, 0, .2), 0 0 24px rgba(255, 90, 0, .68);
  transform: scale(1.16);
}
/* Landingspagina: advies bij terugkeer na detentie */
.return-page {
  --return-navy: #0c3158;
  --return-blue: #174f82;
  --return-orange: #ff6b18;
  --return-ink: #15395f;
  --return-muted: #5f738a;
  --return-line: #dbe4ec;
  --return-soft: #f5f8fb;
}

.return-page main { overflow: hidden; }

.return-page a:not(.button):not(.brand):not(.top-cta) {
  text-underline-offset: .2em;
}

.return-breadcrumb {
  width: min(1180px, calc(100% - 40px));
  margin: 26px auto 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  color: var(--return-muted);
  font-size: .9rem;
}

.return-breadcrumb a { color: var(--return-blue); font-weight: 700; }

.return-hero {
  width: min(1180px, calc(100% - 40px));
  margin: 18px auto 68px;
  padding: clamp(30px, 5vw, 72px);
  border: 1px solid var(--return-line);
  border-radius: 30px;
  background: linear-gradient(135deg, #fff 0%, #fff 58%, #f2f7fb 100%);
  box-shadow: 0 26px 70px rgba(13, 49, 87, .11);
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  gap: clamp(30px, 5vw, 72px);
  align-items: center;
}

.return-hero h1 {
  color: var(--return-navy);
  font-size: clamp(2.2rem, 5vw, 4.4rem);
  line-height: 1.02;
  letter-spacing: -.045em;
  max-width: 900px;
  margin: .25em 0 .35em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.return-hero p { color: var(--return-muted); max-width: 780px; }
.return-hero .lead { color: var(--return-ink); font-size: clamp(1.08rem, 1.7vw, 1.28rem); }
.return-hero .article-cta, .return-final .article-cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 26px 0 12px; }
.privacy-note { font-size: .88rem; font-weight: 700; }

.return-visual {
  position: relative;
  min-height: 440px;
  border-radius: 28px;
  background: radial-gradient(circle at 50% 50%, rgba(255,107,24,.13) 0 18%, transparent 19%), linear-gradient(145deg, #0a294a, #185b91);
  overflow: hidden;
  isolation: isolate;
}

.return-infographic { min-width: 0; }
.infographic-open { position: relative; width: 100%; padding: 0; display: block; overflow: hidden; border: 2px solid rgba(255,107,24,.55); border-radius: 26px; background: var(--return-navy); box-shadow: 0 20px 48px rgba(12,49,88,.2); cursor: zoom-in; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.infographic-open:hover, .infographic-open:focus-visible { transform: translateY(-6px) scale(1.015); border-color: var(--return-orange); box-shadow: 0 28px 58px rgba(12,49,88,.28); outline: 4px solid rgba(255,107,24,.18); outline-offset: 3px; }
.infographic-open img { width: 100%; height: auto; display: block; }
.infographic-hint { position: absolute; right: 14px; bottom: 14px; display: inline-flex; align-items: center; gap: 8px; padding: 9px 13px; border-radius: 999px; color: #fff; background: rgba(6,31,58,.88); backdrop-filter: blur(8px); font-size: .8rem; font-weight: 850; box-shadow: 0 8px 20px rgba(0,0,0,.22); transition: background-color .22s ease, transform .22s ease; }
.infographic-open:hover .infographic-hint { transform: scale(1.06); background: var(--return-orange); }
.infographic-hint span { font-size: 1.15rem; line-height: 1; }

.infographic-dialog { width: min(94vw, 1100px); max-height: 94vh; padding: 0; overflow: auto; border: 1px solid rgba(255,255,255,.22); border-radius: 24px; color: #fff; background: #071f39; box-shadow: 0 28px 90px rgba(0,0,0,.5); }
.infographic-dialog::backdrop { background: rgba(3,17,32,.86); backdrop-filter: blur(5px); }
.infographic-dialog-bar { position: sticky; z-index: 2; top: 0; padding: 12px 16px 12px 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; background: rgba(7,31,57,.94); backdrop-filter: blur(10px); }
.infographic-dialog-bar strong { color: #fff; }
.infographic-close { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 44px; border: 0; border-radius: 50%; color: #fff; background: var(--return-orange); font-size: 1.8rem; line-height: 1; cursor: pointer; transition: transform .2s ease, background-color .2s ease; }
.infographic-close:hover, .infographic-close:focus-visible { transform: scale(1.1) rotate(4deg); background: #ff7a28; outline: 3px solid rgba(255,255,255,.35); }
.infographic-dialog > img { width: 100%; height: auto; display: block; }

.return-visual::before, .return-visual::after {
  content: "";
  position: absolute;
  inset: 18%;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
}
.return-visual::after { inset: 31%; }
.network-core, .network-item { position: absolute; z-index: 1; }
.network-core { inset: 50% auto auto 50%; transform: translate(-50%, -50%); width: 150px; aspect-ratio: 1; display: grid; place-items: center; text-align: center; border-radius: 50%; color: #fff; background: var(--return-orange); box-shadow: 0 15px 35px rgba(0,0,0,.22); }
.network-item { color: #fff; border: 1px solid rgba(255,255,255,.4); background: rgba(255,255,255,.12); backdrop-filter: blur(5px); padding: 8px 13px; border-radius: 999px; font-size: .83rem; font-weight: 800; }
.network-item::before { content: "✓ "; color: #ff9a5e; }
.n1 { top: 12%; left: 12%; }.n2 { top: 17%; right: 8%; }.n3 { bottom: 13%; left: 10%; }.n4 { bottom: 17%; right: 9%; }.n5 { top: 47%; right: 4%; }

.return-section { width: min(1100px, calc(100% - 40px)); margin: 0 auto 72px; }
.return-section .section-intro { margin: 0 0 30px; }
.return-section h2 { color: var(--return-navy); font-size: clamp(1.8rem, 3.2vw, 3rem); line-height: 1.1; letter-spacing: -.025em; }
.return-section h3 { color: var(--return-navy); }
.return-section p { color: var(--return-muted); }
.soft-section { position: relative; padding: clamp(30px, 5vw, 60px); border-radius: 30px; background: var(--return-soft); border: 1px solid var(--return-line); }

.return-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.return-check-grid article { display: flex; align-items: flex-start; gap: 14px; padding: 20px; border: 1px solid var(--return-line); border-radius: 18px; background: #fff; transition: transform .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease; }
.return-check-grid article:hover { transform: translateY(-5px); border-color: var(--return-blue); background: linear-gradient(135deg, var(--return-navy), var(--return-blue)); box-shadow: 0 18px 38px rgba(12,49,88,.22); }
.return-check-grid span { flex: 0 0 36px; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--return-orange); font-weight: 900; box-shadow: 0 0 0 6px rgba(255,107,24,.1); transition: transform .24s ease, background-color .24s ease, box-shadow .24s ease; }
.return-check-grid article:hover span { transform: translateY(-3px) scale(1.22) rotate(-5deg); background: #ff7a28; box-shadow: 0 0 0 8px rgba(255,255,255,.14), 0 10px 22px rgba(0,0,0,.2); }
.return-check-grid p { margin: 4px 0 0; color: var(--return-ink); font-weight: 700; transition: color .24s ease; }
.return-check-grid article:hover p { color: #fff; }
.return-conclusion { margin-top: 24px; padding: 22px 24px; border-left: 5px solid var(--return-orange); border-radius: 0 16px 16px 0; color: var(--return-ink) !important; background: #fff4ed; font-weight: 750; }

.return-steps { display: grid; gap: 18px; }
.return-step { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 22px; padding: 26px; background: #fff; border: 1px solid var(--return-line); border-radius: 20px; transition: transform .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease; }
.return-step:hover { transform: translateY(-4px); background: linear-gradient(135deg, var(--return-navy), var(--return-blue)); border-color: var(--return-blue); box-shadow: 0 18px 38px rgba(12,49,88,.2); }
.step-no { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; background: var(--return-orange); color: #fff; font-size: 1.45rem; font-weight: 900; box-shadow: 0 0 0 7px rgba(255,107,24,.11); transition: transform .24s ease, background-color .24s ease, box-shadow .24s ease; }
.return-step:hover .step-no { transform: translateY(-3px) scale(1.2) rotate(-5deg); background: #ff7a28; box-shadow: 0 0 0 8px rgba(255,255,255,.14), 0 10px 22px rgba(0,0,0,.2); }
.return-step h3 { margin: 2px 0 8px; font-size: 1.35rem; }
.return-step p { margin-bottom: 0; }
.return-step h3, .return-step p, .return-step li, .return-step .question-box strong { transition: color .24s ease; }
.return-step:hover h3, .return-step:hover p, .return-step:hover li, .return-step:hover .question-box strong { color: #fff; }
.return-step:hover .question-box { background: rgba(255,255,255,.1); }
.question-box { margin-top: 20px; padding: 20px; border-radius: 16px; background: #f5f8fb; }
.question-box ul { margin: 12px 0 0; padding-left: 20px; columns: 2; color: var(--return-muted); }

.split-section { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); gap: clamp(30px, 5vw, 60px); align-items: center; }
.return-list { padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 9px 18px; }
.return-list li { position: relative; padding-left: 25px; color: var(--return-ink); }
.return-list li::before { content: "✓"; position: absolute; left: 0; color: var(--return-orange); font-weight: 900; transform-origin: center; transition: transform .22s ease, color .22s ease, text-shadow .22s ease; }
.return-list li:hover::before { transform: translateY(-2px) scale(1.45) rotate(-7deg); color: #ff7a28; text-shadow: 0 5px 12px rgba(255,107,24,.28); }
.return-quote { padding: 32px; color: #fff; background: linear-gradient(145deg, var(--return-navy), var(--return-blue)); border-radius: 24px; box-shadow: 0 22px 45px rgba(12,49,88,.2); }
.return-quote p, .return-quote strong { color: #fff; }
.return-quote p { font-size: 1.35rem; line-height: 1.35; }
.return-quote strong { display: block; border-top: 1px solid rgba(255,255,255,.25); padding-top: 18px; }

.amv-section { padding: clamp(30px, 5vw, 60px); color: #fff; background: linear-gradient(140deg, #092846, #165886); border-radius: 30px; }
.amv-section h2, .amv-section .section-kicker, .amv-section p, .amv-section a { color: #fff; }
.amv-section a { font-weight: 800; }
.topic-cloud { display: flex; flex-wrap: wrap; gap: 10px; margin: 26px 0; }
.topic-cloud span { padding: 10px 14px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; background: rgba(255,255,255,.1); font-weight: 750; }
.amv-section .return-conclusion { color: #fff !important; background: rgba(255,255,255,.1); }

.return-process { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 12px; }
.return-process article { position: relative; padding: 22px 18px; border-radius: 18px; background: #fff; border: 1px solid var(--return-line); transition: transform .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease; }
.return-process article:hover { transform: translateY(-6px); color: #fff; background: linear-gradient(145deg, var(--return-navy), var(--return-blue)); border-color: var(--return-blue); box-shadow: 0 18px 38px rgba(12,49,88,.22); }
.return-process span { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 15px; border-radius: 50%; color: #fff; background: var(--return-orange); box-shadow: 0 0 0 6px rgba(255,107,24,.11); font-size: 1.2rem; font-weight: 900; transition: transform .24s ease, background-color .24s ease, box-shadow .24s ease; }
.return-process article:hover span { transform: translateY(-3px) scale(1.22) rotate(-6deg); background: #ff7a28; box-shadow: 0 0 0 8px rgba(255,255,255,.14), 0 10px 22px rgba(0,0,0,.2); }
.return-process h3 { font-size: 1.05rem; line-height: 1.25; transition: color .24s ease; }
.return-process p { font-size: .92rem; transition: color .24s ease; }
.return-process article:hover h3, .return-process article:hover p { color: #fff; }

.return-accordion, .faq-item { border: 1px solid var(--return-line); border-radius: 20px; background: #fff; overflow: hidden; }
.return-accordion { transition: transform .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease; }
.return-accordion:hover { transform: translateY(-4px); color: #fff; background: linear-gradient(145deg, var(--return-navy), var(--return-blue)); border-color: var(--return-blue); box-shadow: 0 20px 42px rgba(12,49,88,.22); }
.return-accordion h2, .faq-item h3 { margin: 0; }
.return-accordion button, .faq-item button { width: 100%; border: 0; padding: 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: var(--return-navy); background: transparent; text-align: left; font: inherit; font-weight: 850; cursor: pointer; }
.return-accordion button { transition: color .24s ease, background-color .24s ease; }
.return-accordion:hover button { color: #fff; }
.return-accordion h2 button { font-size: clamp(1.4rem, 2.4vw, 2rem); }
.return-accordion button [aria-hidden], .faq-item button [aria-hidden] { flex: 0 0 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: #fff1e8; color: var(--return-orange); font-size: 1.6rem; }
.return-accordion button:hover, .return-accordion button:focus-visible, .faq-item button:hover, .faq-item button:focus-visible { background: #f7fafc; outline: 3px solid transparent; }
.return-accordion:hover button:hover, .return-accordion:hover button:focus-visible { background: rgba(255,255,255,.08); }
.return-accordion > div { padding: 0 24px 26px; }
.two-col { grid-template-columns: repeat(2, minmax(0,1fr)); }
.disclaimer { margin-top: 22px; padding: 18px; border-radius: 14px; background: var(--return-soft); font-size: .92rem; }
.return-accordion .return-list li, .return-accordion .disclaimer { transition: color .24s ease, background-color .24s ease; }
.return-accordion:hover .return-list li, .return-accordion:hover .disclaimer { color: #fff; }
.return-accordion:hover .disclaimer { background: rgba(255,255,255,.1); }
.return-accordion:hover .return-list li::before { color: #ff8a47; transform: scale(1.2); }

.audience-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin-bottom: 24px; }
.audience-grid span { min-width: 0; min-height: 104px; display: grid; grid-template-columns: 32px minmax(0,1fr); align-items: center; gap: 12px; padding: 18px; border-radius: 17px; color: var(--return-navy); background: #fff; border: 1px solid var(--return-line); box-shadow: 0 9px 24px rgba(12,49,88,.06); font-weight: 850; line-height: 1.28; overflow-wrap: anywhere; transition: transform .24s ease, background-color .24s ease, color .24s ease, box-shadow .24s ease; }
.audience-grid span::before { content: "✓"; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--return-orange); box-shadow: 0 0 0 5px rgba(255,107,24,.1); transition: transform .24s ease, background-color .24s ease, box-shadow .24s ease; }
.audience-grid span:hover { transform: translateY(-5px); color: #fff; background: linear-gradient(135deg, var(--return-navy), var(--return-blue)); box-shadow: 0 18px 38px rgba(12,49,88,.2); }
.audience-grid span:hover::before { transform: translateY(-2px) scale(1.22) rotate(-6deg); background: #ff7a28; box-shadow: 0 0 0 7px rgba(255,255,255,.14); }

.privacy-section { padding: clamp(28px, 5vw, 50px); display: grid; grid-template-columns: auto minmax(0,1fr); gap: 24px; border: 1px solid #cbdde7; border-radius: 26px; background: linear-gradient(135deg, #f3f9fb, #fff); }
.privacy-icon { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--return-blue); box-shadow: 0 0 0 7px rgba(23,79,130,.09); transition: transform .24s ease, background-color .24s ease, box-shadow .24s ease; }
.privacy-icon svg { width: 32px; height: 32px; fill: currentColor; transition: transform .24s ease; }
.privacy-section:hover .privacy-icon { transform: translateY(-6px) scale(1.16) rotate(-5deg); background: #2169a5; box-shadow: 0 0 0 9px rgba(23,79,130,.11), 0 14px 28px rgba(12,49,88,.22); }
.privacy-section:hover .privacy-icon svg { transform: scale(1.08); }

.faq-list { display: grid; gap: 12px; }
.faq-item button { font-size: 1.05rem; }
.faq-item > div { padding: 0 24px 22px; }
.faq-item > div p { margin: 0; }
.return-final { padding: clamp(34px, 6vw, 68px); text-align: left; border-radius: 30px; }
.return-final .button.secondary { color: var(--return-navy); border-color: var(--return-blue); background: #fff; }
.return-final .button.secondary:hover { color: #fff; border-color: var(--return-blue); background: var(--return-blue); }
.return-final .privacy-note { color: var(--return-muted); }

@media (max-width: 1000px) {
  .return-hero { grid-template-columns: 1fr; }
  .return-visual { min-height: 360px; }
  .return-process { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .audience-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 720px) {
  .return-breadcrumb, .return-hero, .return-section { width: min(100% - 24px, 1100px); }
  .return-breadcrumb { margin-top: 16px; }
  .return-hero { margin-bottom: 42px; padding: 24px 20px; border-radius: 22px; }
  .return-hero h1 { font-size: clamp(2.05rem, 10.5vw, 3.25rem); }
  .return-visual { min-height: 310px; }
  .infographic-open { border-radius: 20px; }
  .infographic-hint { right: 10px; bottom: 10px; }
  .infographic-dialog { width: 96vw; max-height: 92vh; border-radius: 18px; }
  .network-item { font-size: .72rem; }
  .n5 { display: none; }
  .return-section { margin-bottom: 46px; }
  .soft-section, .amv-section { padding: 26px 20px; border-radius: 22px; }
  .return-check-grid, .split-section, .return-list, .two-col, .return-process, .audience-grid { grid-template-columns: 1fr; }
  .return-step { grid-template-columns: 1fr; padding: 21px; }
  .question-box ul { columns: 1; }
  .privacy-section { grid-template-columns: 1fr; padding: 26px 20px; }
  .return-accordion button, .faq-item button { padding: 19px; }
  .return-accordion > div, .faq-item > div { padding: 0 19px 20px; }
  .return-hero .button, .return-final .button { width: 100%; justify-content: center; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .return-check-grid article { transition: none; }
}

/* Homepage: heldere, bewegende vinkjes in het aanpakblok. */
.approach-grid article .check {
  position: relative !important;
  z-index: 5 !important;
  color: #fff !important;
  border: 2px solid #fff !important;
  background: #ff6508 !important;
  opacity: 1 !important;
  filter: none !important;
  box-shadow: 0 0 0 6px rgba(255,101,8,.18), 0 9px 22px rgba(255,90,0,.24) !important;
  transform: scale(1);
  transition: transform .24s cubic-bezier(.2,.8,.2,1.25), background-color .2s ease, box-shadow .24s ease !important;
}

.approach-grid article {
  isolation: isolate;
}

.approach-grid article:hover .check,
.approach-grid article:focus-within .check {
  color: #fff !important;
  background: #ff5200 !important;
  transform: translateY(-5px) scale(1.3) rotate(-7deg) !important;
  box-shadow: 0 0 0 9px rgba(255,110,18,.25), 0 0 32px rgba(255,82,0,.9), 0 16px 30px rgba(8,38,70,.3) !important;
}
/* X-pert team central landing page */
.xpert-page{scroll-behavior:smooth}.xpert-page .return-hero{align-items:center}.xpert-hero-visual{position:relative;min-height:430px;border-radius:34px;background:radial-gradient(circle at center,#ff7418 0 17%,#153d68 18% 43%,#071f3d 44% 100%);box-shadow:0 24px 60px rgba(4,34,66,.2);display:grid;place-items:center;color:#fff;overflow:hidden}.xpert-hero-visual strong{text-align:center;font-size:clamp(1.4rem,3vw,2.3rem);line-height:1.05}.xpert-hero-visual span{position:absolute;padding:.55rem .85rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.12);font-weight:800;letter-spacing:.12em;font-size:.72rem}.xpert-hero-visual span:nth-child(1){top:11%;left:12%}.xpert-hero-visual span:nth-child(2){top:13%;right:10%}.xpert-hero-visual span:nth-child(3){bottom:12%;left:50%;transform:translateX(-50%)}.xpert-quote{max-width:920px;margin:2rem auto;padding:2rem;border-left:7px solid #ff6b16;border-radius:0 24px 24px 0;background:#fff;color:#0b365f;font-size:clamp(1.35rem,2.5vw,2rem);font-weight:850;box-shadow:0 14px 35px rgba(7,39,74,.08)}.xpert-quote small{display:block;margin-top:1rem;color:#5b7089;font-size:1rem;font-weight:500;line-height:1.6}.xpert-checks{grid-template-columns:repeat(3,minmax(0,1fr))}.xpert-card-grid,.xpert-service-grid,.xpert-org-grid{display:grid;gap:1.1rem}.xpert-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.xpert-card-grid article,.xpert-service-grid article,.xpert-org-grid article{position:relative;padding:1.55rem;border:1px solid #d6e0ea;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(8,44,79,.07);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.xpert-card-grid article:hover,.xpert-card-grid article:focus-within,.xpert-service-grid article:hover,.xpert-org-grid article:hover{transform:translateY(-5px);border-color:#2581c4;box-shadow:0 20px 38px rgba(8,74,126,.14)}.xpert-card-grid article:first-child{background:linear-gradient(135deg,#092d54,#1f5f91);color:#fff;border-color:#ff7a21}.xpert-card-grid article:first-child h3,.xpert-card-grid article:first-child a{color:#fff}.xpert-card-grid h3,.xpert-service-grid h3,.xpert-org-grid h3{color:#083763;margin:.7rem 0}.xpert-card-grid a{display:inline-block;margin-top:.5rem;color:#0b5f9c;font-weight:800;text-underline-offset:4px}.xpert-card-grid a:focus-visible{outline:3px solid #ff7a21;outline-offset:5px;border-radius:4px}.xpert-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#ff6b16;color:#fff;font-size:1.45rem;box-shadow:0 0 0 8px rgba(255,107,22,.12)}.xpert-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.xpert-service-grid article:before{content:'✓';display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#eaf5ff;color:#1475b7;font-weight:900;transition:.2s}.xpert-service-grid article:hover:before{background:#1475b7;color:#fff;transform:scale(1.14)}.center-cta{text-align:center;margin:2rem 0 0}.xpert-org-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.xpert-org-grid article{border-top:4px solid #ff6b16}.expectations{background:#092e56;color:#fff}.expectations h2,.expectations h3,.expectations p{color:inherit}.expectations .xpert-service-grid article{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}.urgent-note,.privacy-warning{padding:1rem 1.2rem;border-radius:16px;background:#fff2e8;color:#6d2c00;border:1px solid #ffc89f}.xpert-contact{display:block}.xpert-contact .section-intro{text-align:left}.xpert-contact .secure-contact-form{max-width:920px;margin:1.5rem auto 0;text-align:left;background:#fff;color:#0b365f}.xpert-form label{color:#0b365f}.xpert-form .privacy-check{display:flex}.xpert-page .faq-item button{text-align:left}.xpert-page footer{margin-top:0}
@media(max-width:980px){.xpert-card-grid,.xpert-checks,.xpert-org-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xpert-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xpert-hero-visual{min-height:330px}}
@media(max-width:680px){.xpert-card-grid,.xpert-checks,.xpert-org-grid,.xpert-service-grid{grid-template-columns:1fr}.xpert-hero-visual{min-height:290px}.xpert-page .article-cta{display:grid}.xpert-page .button{width:100%;justify-content:center}.xpert-quote{padding:1.3rem}.xpert-contact .secure-contact-form{padding:1rem}.xpert-page h1{hyphens:none;overflow-wrap:normal;word-break:normal}}

/* X-pert expertise cards: blue hover and vivid check icons */
.xpert-page .xpert-card-grid article:hover,
.xpert-page .xpert-card-grid article:focus-within{transform:translateY(-8px) scale(1.015);border-color:#ff7a21;background:linear-gradient(135deg,#092d54,#236a9e);color:#fff;box-shadow:0 24px 46px rgba(8,60,105,.25)}
.xpert-page .xpert-card-grid article:hover h3,.xpert-page .xpert-card-grid article:hover a,.xpert-page .xpert-card-grid article:focus-within h3,.xpert-page .xpert-card-grid article:focus-within a{color:#fff}
.xpert-page .xpert-card-grid .xpert-icon{border:2px solid rgba(255,255,255,.88);font-size:1.65rem;font-weight:900;line-height:1;transition:transform .22s ease,background .22s ease,box-shadow .22s ease}
.xpert-page .xpert-card-grid article:hover .xpert-icon,.xpert-page .xpert-card-grid article:focus-within .xpert-icon{transform:scale(1.22) rotate(-6deg);background:#ff7a00;box-shadow:0 0 0 10px rgba(255,122,0,.22),0 0 24px rgba(255,122,0,.75)}

/* X-pert practice questions: blue hover and open state */
.xpert-page .practice-questions .faq-item{overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.xpert-page .practice-questions .faq-item:hover,.xpert-page .practice-questions .faq-item:focus-within{transform:translateY(-3px);border-color:#ff7a21;box-shadow:0 16px 32px rgba(8,60,105,.18)}
.xpert-page .practice-questions .faq-item button{transition:background .22s ease,color .22s ease}
.xpert-page .practice-questions .faq-item button:hover,
.xpert-page .practice-questions .faq-item button:focus-visible,
.xpert-page .practice-questions .faq-item button[aria-expanded="true"]{background:linear-gradient(135deg,#092d54,#236a9e);color:#fff}
.xpert-page .practice-questions .faq-item button span:last-child{display:grid;place-items:center;min-width:34px;height:34px;margin-left:1rem;border-radius:50%;background:#fff2e8;color:#ff6412;font-size:1.25rem;font-weight:900;transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease}
.xpert-page .practice-questions .faq-item button:hover span:last-child,
.xpert-page .practice-questions .faq-item button:focus-visible span:last-child,
.xpert-page .practice-questions .faq-item button[aria-expanded="true"] span:last-child{transform:scale(1.18) rotate(90deg);background:#ff6b16;color:#fff;box-shadow:0 0 0 7px rgba(255,107,22,.2),0 0 20px rgba(255,107,22,.55)}
.xpert-page .practice-questions .faq-item button[aria-expanded="true"]+div{border-top:1px solid rgba(255,255,255,.18)}
.xpert-page .practice-questions .faq-item button:hover span:first-child,
.xpert-page .practice-questions .faq-item button:focus-visible span:first-child,
.xpert-page .practice-questions .faq-item button[aria-expanded="true"] span:first-child{color:#fff}

/* X-pert hero infographic and safe title wrapping */
.xpert-page .xpert-hero{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(28px,4vw,56px)}
.xpert-page .xpert-hero-copy{min-width:0}
.xpert-page .xpert-hero h1{max-width:100%;font-size:clamp(2.35rem,4.15vw,3.85rem);line-height:1.04;overflow-wrap:break-word;word-break:normal;hyphens:auto}
.xpert-hero-image{align-self:center;width:100%;max-width:470px;margin-inline:auto;border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 24px 58px rgba(5,40,74,.18)}
.xpert-hero-image img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:980px){.xpert-page .xpert-hero{grid-template-columns:1fr}.xpert-hero-image{max-width:620px}.xpert-page .xpert-hero h1{font-size:clamp(2.25rem,7vw,3.8rem)}}
@media(max-width:680px){.xpert-page .xpert-hero h1{font-size:clamp(2rem,10vw,3rem);letter-spacing:-.035em}.xpert-hero-image{border-radius:20px}}

/* Enlarged X-pert infographic */
.xpert-image-open{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;color:#fff}
.xpert-image-open img{transition:transform .25s ease,filter .25s ease}
.xpert-image-open:hover img,.xpert-image-open:focus-visible img{transform:scale(1.018);filter:brightness(.86)}
.xpert-image-open:focus-visible{outline:4px solid #ff6b16;outline-offset:5px;border-radius:26px}
.xpert-image-open span,.xpert-image-open>strong{position:absolute;left:50%;z-index:2;opacity:0;transform:translate(-50%,10px);transition:opacity .22s ease,transform .22s ease}
.xpert-image-open span{top:43%;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#ff6b16;font-size:2rem;box-shadow:0 10px 28px rgba(0,0,0,.25)}
.xpert-image-open>strong{top:55%;padding:.55rem .85rem;border-radius:999px;background:#092d54;font-size:.85rem;white-space:nowrap}
.xpert-image-open:hover span,.xpert-image-open:hover>strong,.xpert-image-open:focus-visible span,.xpert-image-open:focus-visible>strong{opacity:1;transform:translate(-50%,0)}
.xpert-image-dialog{width:min(96vw,1050px);max-height:94vh;padding:0;border:0;border-radius:24px;background:#fff;box-shadow:0 35px 90px rgba(0,20,45,.45);overflow:auto}
.xpert-image-dialog::backdrop{background:rgba(2,18,36,.82);backdrop-filter:blur(5px)}
.xpert-dialog-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;background:#092d54;color:#fff}
.xpert-image-close{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:#ff6b16;color:#fff;font-size:1.8rem;cursor:pointer}
.xpert-image-close:hover,.xpert-image-close:focus-visible{background:#ff5200;transform:scale(1.08);outline:3px solid #fff;outline-offset:2px}
.xpert-image-dialog>img{display:block;width:100%;height:auto;background:#fff}
@media(max-width:680px){.xpert-image-dialog{width:98vw;max-height:96vh;border-radius:16px}.xpert-image-open span,.xpert-image-open>strong{opacity:1}.xpert-image-open span{width:48px;height:48px;font-size:1.6rem}.xpert-image-open>strong{font-size:.74rem}}

/* Professional experience cards */
.xpert-page .xpert-experience-list{align-self:stretch;gap:13px;align-content:center}
.xpert-page .xpert-experience-list li{display:flex;align-items:center;min-height:78px;padding:1rem 1rem 1rem 4.2rem;border:1px solid #d5e1ec;border-radius:18px;background:#fff;color:#0b365f;font-size:1.03rem;font-weight:750;line-height:1.35;box-shadow:0 10px 24px rgba(8,44,79,.07);transition:transform .22s ease,background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease}
.xpert-page .xpert-experience-list li::before{content:'✓';left:1rem;top:50%;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff2e8;color:#ff6412;font-size:1.35rem;font-weight:950;transform:translateY(-50%);box-shadow:0 0 0 5px rgba(255,107,22,.09);transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease}
.xpert-page .xpert-experience-list li:hover,.xpert-page .xpert-experience-list li:focus-within{z-index:1;transform:translateY(-5px) scale(1.025);border-color:#ff7a21;background:linear-gradient(135deg,#092d54,#236a9e);color:#fff;box-shadow:0 20px 38px rgba(8,60,105,.22)}
.xpert-page .xpert-experience-list li:hover::before,.xpert-page .xpert-experience-list li:focus-within::before{transform:translateY(-50%) scale(1.2) rotate(-7deg);background:#ff6b16;color:#fff;box-shadow:0 0 0 8px rgba(255,107,22,.2),0 0 22px rgba(255,107,22,.65)}
@media(max-width:680px){.xpert-page .xpert-experience-list{grid-template-columns:1fr}.xpert-page .xpert-experience-list li{min-height:70px;padding-left:3.9rem;font-size:1rem}}

/* Readable urgent-safety notice inside the dark expectations section */
.xpert-page .expectations .urgent-note{position:relative;margin-top:1.4rem;padding:1.15rem 1.25rem 1.15rem 4.25rem;background:#fff2e8;color:#173b60;font-size:1.02rem;font-weight:800;line-height:1.5;border:1px solid #ffb27c;box-shadow:0 10px 24px rgba(0,24,52,.16)}
.xpert-page .expectations .urgent-note::before{content:'!';position:absolute;left:1.15rem;top:50%;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ff6b16;color:#fff;font-size:1.35rem;font-weight:950;transform:translateY(-50%);box-shadow:0 0 0 6px rgba(255,107,22,.14)}
@media(max-width:680px){.xpert-page .expectations .urgent-note{padding:.95rem 1rem .95rem 3.65rem;font-size:.95rem}.xpert-page .expectations .urgent-note::before{left:.85rem;width:34px;height:34px}}

/* Keep experience text readable inside the split layout */
.xpert-page .split-section .xpert-experience-list{grid-template-columns:1fr;width:100%;min-width:0}
.xpert-page .split-section .xpert-experience-list li{width:100%;min-width:0;overflow:hidden;overflow-wrap:break-word;word-break:normal}
.xpert-page .split-section .xpert-experience-list li:hover,.xpert-page .split-section .xpert-experience-list li:focus-within{transform:translateY(-4px) scale(1.01)}
@media(min-width:760px) and (max-width:980px){.xpert-page .split-section .xpert-experience-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact full-width experience section */
.xpert-page .xpert-experience-section{display:block;padding:clamp(28px,4vw,46px);border:1px solid #d9e4ee;border-radius:28px;background:#f5f8fb}
.xpert-page .xpert-experience-section>div{max-width:850px;margin:0 auto 1.5rem;text-align:center}
.xpert-page .xpert-experience-section h2{margin:.25rem auto .65rem;max-width:780px}
.xpert-page .xpert-experience-section>div p:last-child{max-width:800px;margin-inline:auto}
.xpert-page .xpert-experience-section .xpert-experience-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:940px;margin:0 auto;gap:12px}
.xpert-page .xpert-experience-section .xpert-experience-list li{min-height:66px;padding:.75rem 1rem .75rem 3.9rem;font-size:.98rem}
.xpert-page .xpert-experience-section .xpert-experience-list li::before{left:.9rem;width:34px;height:34px;font-size:1.15rem}
@media(max-width:680px){.xpert-page .xpert-experience-section{padding:24px 16px}.xpert-page .xpert-experience-section>div{text-align:left;margin-bottom:1.1rem}.xpert-page .xpert-experience-section .xpert-experience-list{grid-template-columns:1fr}.xpert-page .xpert-experience-section .xpert-experience-list li{min-height:62px}}

/* Compact overview of domains with orange hover dots */
.xpert-page .xpert-domains{padding:clamp(28px,4vw,46px)}
.xpert-page .xpert-domains .section-intro{margin-bottom:1.25rem}
.xpert-page .xpert-domain-cloud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.xpert-page .xpert-domain-cloud span{position:relative;display:flex;align-items:center;min-height:56px;padding:.7rem .85rem .7rem 2.55rem;border:1px solid #d9e4ee;border-radius:15px;background:#fff;color:#153b62;font-size:.94rem;font-weight:750;line-height:1.25;box-shadow:0 7px 18px rgba(8,44,79,.05);transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
.xpert-page .xpert-domain-cloud span::before{content:'';position:absolute;left:.9rem;top:50%;width:10px;height:10px;border-radius:50%;background:#b7c8d8;transform:translateY(-50%);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.xpert-page .xpert-domain-cloud span:hover{transform:translateY(-3px);border-color:#ff7a21;background:linear-gradient(135deg,#0b355f,#236a9e);color:#fff;box-shadow:0 14px 28px rgba(8,60,105,.18)}
.xpert-page .xpert-domain-cloud span:hover::before{transform:translateY(-50%) scale(1.55);background:#ff6b16;box-shadow:0 0 0 6px rgba(255,107,22,.2),0 0 15px rgba(255,107,22,.65)}
@media(max-width:900px){.xpert-page .xpert-domain-cloud{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.xpert-page .xpert-domains{padding:24px 16px}.xpert-page .xpert-domain-cloud{grid-template-columns:1fr}.xpert-page .xpert-domain-cloud span{min-height:52px}}

/* Homepage approach cards match the typography and structure of audience blocks */
.approach-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr;align-items:center;column-gap:14px;row-gap:18px;min-height:170px;padding:22px 26px}
.approach-grid article>h3,.approach-grid article>h3.sv-label-front{grid-column:1;grid-row:1;justify-self:start;margin:0!important;color:var(--blue);font-size:.94rem;font-weight:950;line-height:1.2;letter-spacing:.045em;text-transform:uppercase;transform:none!important}
.approach-grid article>.check{grid-column:2;grid-row:1;justify-self:end;display:grid;place-items:center;width:31px!important;height:31px!important;margin:0!important;border:2px solid rgba(243,107,23,.62)!important;border-radius:50%;background:transparent!important;box-shadow:none!important;color:transparent!important;font-size:0!important;transform:none!important}
.approach-grid article>.check::before{content:'+';color:var(--orange);font-size:1rem;font-weight:950;line-height:1}
.approach-grid article>p{grid-column:1/-1;grid-row:2;align-self:start;margin:0!important;color:var(--muted);font-size:.95rem;line-height:1.5}
.approach-grid article:hover h3,.approach-grid article:focus-within h3{color:var(--blue)}
.approach-grid article:hover>.check,.approach-grid article:focus-within>.check{transform:scale(1.13)!important;border-color:var(--orange)!important;background:var(--orange)!important;box-shadow:0 0 0 6px rgba(243,107,23,.13),0 8px 18px rgba(15,45,82,.16)!important}
.approach-grid article:hover>.check::before,.approach-grid article:focus-within>.check::before{color:#fff}
@media(max-width:720px){.approach-grid article{min-height:145px;padding:19px 20px}.approach-grid article>h3,.approach-grid article>h3.sv-label-front{font-size:.88rem}}

/* Plain, larger headings on the three approach cards */
.approach-grid article>h3,.approach-grid article>h3.sv-label-front{width:auto!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--blue)!important;font-size:1.08rem!important;letter-spacing:.035em;text-shadow:none!important}
.approach-grid article:hover>h3,.approach-grid article:focus-within>h3,.approach-grid article.sv-readable-hover>h3{background:transparent!important;color:#fff!important;transform:none!important}
@media(max-width:720px){.approach-grid article>h3,.approach-grid article>h3.sv-label-front{font-size:1rem!important}}

/* Plain headings in all three Mini maatwerk benefit cards */
.mini-benefits article h3,.mini-benefits article h3.sv-label-front{display:block!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;font-size:1rem!important;line-height:1.25;text-shadow:none!important;transform:none!important}
.mini-benefits article:hover h3,.mini-benefits article:focus-within h3{background:transparent!important;color:#fff!important;transform:none!important}

/* Trainingsmiddag Jonge Aanwas */
.young-training-page{background:#f8fafc;color:#0d3158}
.young-training-page main{overflow:hidden}
.young-hero{display:grid;grid-template-columns:minmax(0,840px) minmax(440px,680px);justify-content:space-between;gap:clamp(38px,4.5vw,82px);align-items:center;min-height:calc(100vh - 86px);padding-block:clamp(64px,7vw,110px);padding-inline:max(clamp(22px,4.5vw,78px),calc((100vw - 1640px)/2));background:radial-gradient(circle at 88% 12%,rgba(243,107,23,.17),transparent 30%),radial-gradient(circle at 18% 42%,rgba(255,255,255,.96),transparent 34%),linear-gradient(135deg,#fff8f3 0%,#fff 50%,#eaf3f9 100%)}
.young-hero-copy{max-width:840px}
.young-hero .breadcrumb{display:inline-flex;margin-bottom:24px;color:#5d728a;font-size:.84rem;font-weight:800;text-decoration:none}
.young-hero h1{max-width:920px;font-size:clamp(2.8rem,5.2vw,5.9rem);line-height:.98;letter-spacing:-.05em;text-shadow:0 12px 32px rgba(11,52,95,.08)}
.young-route-title{margin-inline:auto;text-align:center}
.young-route-title>span{display:block}
.young-route-title .young-route-center{display:flex;justify-content:center;align-items:center;min-height:1.24em;margin:.08em 0;font-size:.62em;line-height:1.18}
.young-route-word{position:relative;display:inline-block;width:1.3ch;height:1.22em;color:#f36b17;animation:youngRouteWidth 6s cubic-bezier(.76,0,.24,1) infinite}
.young-route-word>span{position:absolute;inset:0}
.young-route-word b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;line-height:1;font:inherit;font-weight:inherit;letter-spacing:inherit;white-space:nowrap}
.young-route-word b:first-child{animation:youngRouteIn 6s cubic-bezier(.76,0,.24,1) infinite}
.young-route-word b:last-child{animation:youngRouteOut 6s cubic-bezier(.76,0,.24,1) infinite}
@keyframes youngRouteIn{0%,40%,100%{opacity:1;transform:translateY(0)}50%,90%{opacity:0;transform:translateY(-.32em)}}
@keyframes youngRouteOut{0%,40%,100%{opacity:0;transform:translateY(.32em)}50%,90%{opacity:1;transform:translateY(0)}}
@keyframes youngRouteWidth{0%,40%{width:1.3ch}50%,90%{width:2.15ch}100%{width:1.3ch}}
.young-subtitle{max-width:790px;margin:30px 0 0;color:#526b84;font-size:clamp(1.14rem,1.55vw,1.48rem);line-height:1.58}
.young-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:36px}
.young-hero-actions .button{min-height:58px;padding:18px 27px;font-size:.98rem;box-shadow:0 15px 32px rgba(243,107,23,.24)}
.young-hero-actions>span{display:inline-flex;align-items:center;gap:12px;padding:13px 17px;border:1px solid rgba(243,107,23,.22);border-radius:999px;background:rgba(255,255,255,.78);color:#12385f;font-size:1.02rem;font-weight:900;box-shadow:0 10px 24px rgba(13,54,91,.08)}
.young-hero-actions i{display:block;width:10px;height:10px;border-radius:50%;background:#f36b17;box-shadow:0 0 0 6px rgba(243,107,23,.13);animation:youngPulse 1.8s ease-in-out infinite}
@keyframes youngPulse{0%,100%{transform:scale(.85);box-shadow:0 0 0 5px rgba(243,107,23,.12)}50%{transform:scale(1.2);box-shadow:0 0 0 10px rgba(243,107,23,0)}}
.young-hero-aside{overflow:hidden;border:1px solid #cadbe8;border-radius:28px;background:#fff;box-shadow:0 34px 82px rgba(11,48,83,.21)}
.young-hero-aside figure{position:relative;width:100%;height:auto;aspect-ratio:4/3;margin:0;overflow:hidden;background:#05080d}
.young-hero-aside figure::after{display:none}
.young-hero-aside img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.young-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#dce5ed}
.young-facts div{display:flex;flex-direction:column;gap:4px;min-height:84px;padding:18px 20px;background:#fff}
.young-facts .wide{grid-column:1/-1;min-height:auto}
.young-facts span{color:#f36b17;font-size:.72rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.young-facts strong{font-size:.96rem;line-height:1.35}
.young-section{padding:clamp(58px,7vw,96px) clamp(22px,7vw,96px)}
.young-section .section-intro{margin-bottom:32px}
.young-section .section-intro>p:last-child{margin-top:16px}
.young-soft{background:#eef4f8}
.young-intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(34px,7vw,110px);align-items:start;background:#fff}
.young-intro h2,.young-smallgroup h2,.young-practical h2,.young-signup h2,.young-incompany h2{font-size:clamp(2rem,3.2vw,3.45rem)}
.young-prose{display:grid;gap:18px;color:#566f87;font-size:clamp(1rem,1.25vw,1.16rem);line-height:1.75}
.young-prose p{margin:0}
.young-data-section{padding-top:clamp(58px,7vw,92px);padding-bottom:clamp(58px,7vw,92px);background:linear-gradient(180deg,#f5f9fc 0%,#fff 100%)}
.young-data-heading{max-width:940px;margin:0 auto 34px;text-align:center}
.young-data-heading h2{margin:.3rem 0 1rem;color:#0c345f;font-size:clamp(2rem,3.25vw,3.35rem);line-height:1.1}
.young-data-heading>p:last-child{max-width:820px;margin:0 auto;color:#587087;font-size:1.06rem;line-height:1.72}
.young-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1280px;margin:0 auto}
.young-data-grid article{min-width:0;padding:28px 24px;border:1px solid #d6e2ec;border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 13px 32px rgba(9,48,84,.07);cursor:pointer;outline:none;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease}
.young-data-grid article:hover,.young-data-grid article:focus-visible,.young-data-grid article.is-counting{transform:translateY(-8px) scale(1.025);border-color:#2d6e9e;background:linear-gradient(135deg,#0b3158 0%,#235f8d 100%);box-shadow:0 24px 48px rgba(8,48,84,.25)}
.young-data-number{display:block;margin-bottom:14px;color:#f36b17;font-size:clamp(2.35rem,3.2vw,3.75rem);line-height:1;font-weight:950;letter-spacing:-.04em;transition:color .28s ease,transform .28s ease,text-shadow .28s ease}
.young-data-grid article:hover .young-data-number,.young-data-grid article:focus-visible .young-data-number,.young-data-grid article.is-counting .young-data-number{color:#ff7a20;transform:scale(1.04);transform-origin:left center;text-shadow:0 0 22px rgba(255,122,32,.35)}
.young-data-grid h3{margin:0 0 10px;color:#0c345f;font-size:1.15rem;line-height:1.25;transition:color .28s ease}
.young-data-grid p{margin:0;color:#587087;line-height:1.62;transition:color .28s ease}
.young-data-grid article:hover h3,.young-data-grid article:focus-visible h3,.young-data-grid article.is-counting h3{color:#fff}
.young-data-grid article:hover p,.young-data-grid article:focus-visible p,.young-data-grid article.is-counting p{color:#e8f2f9}
.young-offences{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,5vw,72px);align-items:center;max-width:1280px;margin:clamp(54px,7vw,88px) auto 0;padding:clamp(28px,4vw,48px);border:1px solid #d8e3ec;border-radius:26px;background:#fff}
.young-offences h2,.young-beyond-delict h2{margin:0 0 14px;color:#0c345f;font-size:clamp(1.75rem,2.7vw,2.75rem);line-height:1.12}
.young-offences-copy p,.young-beyond-delict p{margin:0;color:#587087;font-size:1.03rem;line-height:1.72}
.young-offence-labels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.young-offence-labels li{display:flex;align-items:center;gap:11px;min-width:0;padding:13px 14px;border:1px solid #dbe5ed;border-radius:14px;background:#f8fbfd;color:#173e64;font-weight:800;line-height:1.35}
.young-line-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1.5px solid #f36b17;border-radius:50%;color:#f36b17;font-size:1rem;font-weight:900}
.young-beyond-delict{display:grid;grid-template-columns:auto 1fr;gap:22px;max-width:1120px;margin:32px auto 0;padding:clamp(28px,4vw,46px);border-radius:26px;background:linear-gradient(135deg,#0a3159,#164f7d);color:#fff;box-shadow:0 20px 48px rgba(8,47,84,.16)}
.young-beyond-delict h2{color:#fff}
.young-beyond-delict p{color:#e7f0f7}
.young-beyond-delict p+p{margin-top:18px}
.young-beyond-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#f36b17;color:#fff;font-size:1.6rem;font-weight:900}
.young-data-sources{max-width:1120px;margin:22px auto 0;color:#6a7f93;font-size:.86rem;line-height:1.55}
.young-data-sources a{color:#0b5f9c;font-weight:800;text-underline-offset:3px}
.young-data-sources a:hover{color:#f36b17}
.young-learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.young-learning-grid article{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:center;min-height:118px;padding:22px;border:1px solid #d5e0ea;border-radius:18px;background:#fff;box-shadow:0 9px 24px rgba(8,47,82,.05);transition:transform .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease}
.young-learning-grid article span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff0e6;color:#f36b17;font-size:1.45rem;font-weight:950;transition:transform .24s ease,background .24s ease,color .24s ease}
.young-learning-grid article p{margin:0;font-weight:750;line-height:1.45}
.young-learning-grid article:hover{transform:translateY(-4px);border-color:#f36b17;background:linear-gradient(135deg,#0d3158,#1e5d8b);color:#fff;box-shadow:0 18px 35px rgba(8,47,82,.18)}
.young-learning-grid article:hover span{transform:scale(1.12);background:#f36b17;color:#fff}
.young-smallgroup{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:clamp(38px,7vw,110px);align-items:center;background:#0c3158;color:#fff}
.young-smallgroup h2{color:#fff}
.young-smallgroup-copy>p:last-child{max-width:710px;margin:20px 0 0;color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.7}
.young-smallgroup .section-kicker{color:#ffae75}
.young-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.young-benefits span{position:relative;display:flex;align-items:center;min-height:64px;padding:14px 15px 14px 54px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.075);font-weight:800;line-height:1.3;box-shadow:0 8px 20px rgba(2,20,40,.08);transition:transform .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease}
.young-benefits span::before{content:'✓';position:absolute;left:14px;display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:rgba(255,122,33,.13);color:#ff7a21;font-size:1.1rem;font-weight:950;transition:transform .24s ease,background .24s ease,color .24s ease,box-shadow .24s ease}
.young-benefits span:hover,.young-benefits span:focus-visible{z-index:1;transform:translateY(-4px) scale(1.025);border-color:#ff7a21;background:linear-gradient(135deg,#174d7d,#2676aa);box-shadow:0 17px 32px rgba(2,20,40,.25),0 0 0 1px rgba(255,122,33,.12)}
.young-benefits span:hover::before,.young-benefits span:focus-visible::before{transform:scale(1.18) rotate(-5deg);background:#ff6b16;color:#fff;box-shadow:0 0 0 7px rgba(255,107,22,.16),0 7px 18px rgba(255,107,22,.32)}
.young-benefits span:last-of-type{grid-column:1/-1}
.young-inline-cta{grid-column:1/-1;justify-self:start;margin-top:8px}
.young-case-card{display:grid;grid-template-columns:92px 1fr;gap:30px;max-width:1180px;margin:0 auto;padding:clamp(28px,4vw,54px);border:1px solid rgba(243,107,23,.44);border-radius:26px;background:linear-gradient(135deg,#fff8f3,#fff);box-shadow:0 20px 55px rgba(12,49,88,.1)}
.young-case-icon{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:#f36b17;color:#fff;font-size:2rem;font-weight:950;box-shadow:0 0 0 12px rgba(243,107,23,.12)}
.young-case-card h2{font-size:clamp(1.9rem,3vw,3.25rem)}
.young-case-card>div:last-child>p:not(.section-kicker){max-width:920px;color:#506a83;font-size:1.06rem;line-height:1.7}
.young-privacy{padding:13px 16px;border-left:4px solid #f36b17;background:#fff1e8;color:#183d62!important;font-size:.94rem!important}
.young-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.young-result-grid article{position:relative;min-height:215px;padding:24px;border:1px solid #d5e0ea;border-radius:18px;background:#fff;overflow:hidden;transition:transform .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease,color .24s ease}
.young-result-grid article::after{content:'✓';position:absolute;right:20px;top:18px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff0e6;color:#f36b17;font-weight:950;opacity:.72;transition:transform .24s ease,background .24s ease,color .24s ease,box-shadow .24s ease,opacity .24s ease}
.young-result-grid article:hover,.young-result-grid article:focus-within{transform:translateY(-6px) scale(1.025);border-color:#f36b17;background:linear-gradient(135deg,#103c69,#2676aa);color:#fff;box-shadow:0 20px 42px rgba(8,47,82,.23),0 0 0 1px rgba(243,107,23,.1)}
.young-result-grid article:hover::after,.young-result-grid article:focus-within::after{transform:scale(1.2) rotate(-5deg);background:#f36b17;color:#fff;opacity:1;box-shadow:0 0 0 7px rgba(243,107,23,.16),0 8px 18px rgba(4,28,54,.24)}
.young-result-grid span{color:#f36b17;font-size:.74rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase;transition:color .24s ease}
.young-result-grid h3{margin-top:22px;font-size:1.35rem;transition:color .24s ease}
.young-result-grid p{margin:10px 0 0;color:#5a7289;line-height:1.55;transition:color .24s ease}
.young-result-grid article:hover span,.young-result-grid article:focus-within span{color:#ffb47d}
.young-result-grid article:hover h3,.young-result-grid article:focus-within h3,.young-result-grid article:hover p,.young-result-grid article:focus-within p{color:#fff}
.young-practical{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(36px,7vw,100px);align-items:start;background:#fff}
.young-practical>div>p:last-child{max-width:560px;margin-top:18px;color:#5a7289;line-height:1.65}
.young-practical dl{margin:0;border:1px solid #d4e0ea;border-radius:20px;background:#f7fafc;overflow:hidden}
.young-practical dl div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:17px 22px;border-bottom:1px solid #dce5ed}
.young-practical dl div:last-child{border-bottom:0}
.young-practical dt{color:#647c92;font-weight:750}
.young-practical dd{margin:0;color:#0d3158;font-weight:900}
.young-signup{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(34px,7vw,92px);align-items:start;padding:clamp(58px,7vw,96px) clamp(22px,7vw,96px);background:linear-gradient(135deg,#08294b,#123f6b);color:#fff}
.young-signup h2{color:#fff}
.young-signup-copy>p:not(.section-kicker){max-width:540px;color:rgba(255,255,255,.78);line-height:1.7}
.young-signup .section-kicker{color:#ffae75}
.young-capacity{display:flex;align-items:center;gap:16px;margin-top:28px}
.young-capacity strong{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#f36b17;color:#fff;font-size:2rem;box-shadow:0 0 0 9px rgba(243,107,23,.14)}
.young-capacity span{max-width:160px;font-weight:850;line-height:1.3}
.registration-summary{display:grid;gap:8px;margin-top:30px;padding:20px;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:rgba(255,255,255,.08)}
.registration-summary strong{color:#fff;font-size:1.08rem}
.registration-summary span{color:rgba(255,255,255,.82);font-size:.94rem}
.young-signup-form{padding:clamp(22px,3vw,36px);border-radius:22px;background:#fff;color:#0d3158;box-shadow:0 28px 68px rgba(0,0,0,.2)}
.young-signup-form label>span{color:#6c8298;font-size:.82rem;font-weight:650}
.young-signup-form label.privacy-check>.privacy-copy{color:#0d3158;font-size:.94rem;font-weight:600;line-height:1.55}
.young-signup-form .privacy-copy a{color:#0b65a1;font-weight:850;text-decoration-thickness:2px;text-underline-offset:3px}
.young-signup-form .privacy-copy a:hover{color:#f36b17}
.young-signup-form .privacy-copy a:focus-visible{outline:3px solid rgba(243,107,23,.35);outline-offset:3px;border-radius:3px}
.young-signup-form textarea{resize:vertical}
.registration-review{margin:8px 0 18px;padding:20px;border:1px solid rgba(243,107,23,.45);border-radius:16px;background:#fff7f1}
.registration-review h3{font-size:1.18rem}
.registration-review ul{display:grid;gap:7px;margin:14px 0 18px;padding:0;list-style:none;color:#526b84}
.registration-review>div{display:flex;flex-wrap:wrap;gap:10px}
.registration-review .button{min-height:46px;padding:11px 16px}
.young-waitlist-form h3{font-size:1.55rem}
.young-waitlist-form>p{color:#587087;line-height:1.6}
.young-signup-form .form-status.is-error{margin-top:12px;padding:12px 14px;border-radius:10px;background:#fff0ed;color:#9b2c1f;font-weight:750}
.young-signup-form .form-status.is-success{color:#17633b;font-weight:750}
.button.is-full,.young-mobile-cta.is-full{background:#516a82!important;color:#fff!important;box-shadow:none!important}
[data-registration-submit][hidden],[data-registration-review][hidden],[data-registration-form][hidden],[data-waitlist-form][hidden]{display:none!important}
.young-incompany{display:flex;justify-content:space-between;gap:32px;align-items:center;background:#fffaf7}
.young-incompany>div{max-width:780px}
.young-incompany p:last-child{margin:16px 0 0;color:#587087;line-height:1.65}
.young-mobile-cta{display:none}
@media(prefers-reduced-motion:no-preference){.young-learning-grid article,.young-result-grid article,.young-case-card{animation:youngReveal .55s ease both}.young-learning-grid article:nth-child(2),.young-result-grid article:nth-child(2){animation-delay:.06s}.young-learning-grid article:nth-child(3),.young-result-grid article:nth-child(3){animation-delay:.12s}.young-learning-grid article:nth-child(4),.young-result-grid article:nth-child(4){animation-delay:.18s}@keyframes youngReveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}}
@media(max-width:1300px){.young-hero{grid-template-columns:1fr;justify-content:start}.young-hero-copy{max-width:820px}.young-hero-aside{width:min(100%,720px);max-width:720px}.young-learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.young-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.young-smallgroup,.young-practical,.young-signup{grid-template-columns:1fr}.young-smallgroup-copy,.young-signup-copy{max-width:760px}}
@media(max-width:1020px){.young-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.young-offences{grid-template-columns:1fr}}
@media(max-width:720px){.young-training-page{padding-bottom:72px}.young-training-page .topbar nav,.young-training-page .topbar .top-cta{display:none}.young-hero{padding-top:42px}.young-hero h1{font-size:clamp(2.2rem,11vw,3.35rem)}.young-facts{grid-template-columns:1fr}.young-facts .wide{grid-column:auto}.young-facts div{min-height:auto}.young-intro{grid-template-columns:1fr}.young-learning-grid,.young-result-grid{grid-template-columns:1fr}.young-smallgroup{grid-template-columns:1fr}.young-benefits{grid-template-columns:1fr}.young-benefits span:last-child{grid-column:auto}.young-case-card{grid-template-columns:1fr;gap:24px}.young-case-icon{width:62px;height:62px}.young-practical dl div{grid-template-columns:1fr;gap:5px}.young-incompany{align-items:flex-start;flex-direction:column}.young-mobile-cta{position:fixed;z-index:100;right:14px;bottom:14px;left:14px;display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-radius:14px;background:#f36b17;color:#fff;font-weight:950;text-decoration:none;box-shadow:0 14px 35px rgba(9,42,75,.32)}.young-mobile-cta span{font-size:.78rem;text-transform:uppercase}}
@media(max-width:720px){.young-data-grid,.young-offence-labels{grid-template-columns:1fr}.young-data-grid article{padding:23px 20px}.young-offences{padding:24px 20px}.young-beyond-delict{grid-template-columns:1fr;padding:26px 22px}.young-beyond-mark{width:46px;height:46px}.young-data-heading{text-align:left}.young-data-heading h2{font-size:clamp(1.85rem,9vw,2.5rem)}}
@media(max-width:720px){.young-benefits span:hover,.young-benefits span:focus-visible{transform:translateY(-2px) scale(1.01)}}
@media(prefers-reduced-motion:reduce){.young-benefits span,.young-benefits span::before{transition:none}.young-benefits span:hover,.young-benefits span:focus-visible{transform:none}}
@media(max-width:720px){.young-result-grid article:hover,.young-result-grid article:focus-within{transform:translateY(-2px) scale(1.01)}}
@media(prefers-reduced-motion:reduce){.young-result-grid article,.young-result-grid article::after{transition:none}.young-result-grid article:hover,.young-result-grid article:focus-within{transform:none}}
@media(prefers-reduced-motion:reduce){.young-route-word{width:2.15ch;animation:none}.young-route-word b{animation:none}.young-route-word b:first-child{display:none}.young-route-word b:last-child{opacity:1;transform:none}}

/* Samenwerkingen & opdrachtgevers - professionele kaart- en balkstijl */
.collaboration-page{background:linear-gradient(180deg,#fff 0%,#f3f8fc 46%,#fff 100%);color:#0b3158}
.collaboration-page main{overflow:hidden}
.collaboration-page .article-hero,.collaboration-page .article-section{width:min(100%,1320px);max-width:1320px}
.collaboration-page .collaboration-hero{position:relative;width:100%;max-width:none;isolation:isolate;padding:clamp(72px,8vw,126px) max(clamp(24px,7vw,110px),calc((100vw - 1480px)/2));border-bottom:1px solid #d7e5ef;background:radial-gradient(circle at 88% 20%,rgba(44,132,194,.23),transparent 25%),radial-gradient(circle at 76% 68%,rgba(243,107,23,.14),transparent 20%),linear-gradient(125deg,#fff8f3 0%,#fff 48%,#eaf4fa 100%)}
.collaboration-page .collaboration-hero::after{content:'SAMEN';position:absolute;z-index:-1;right:4vw;bottom:-.1em;color:rgba(15,73,119,.045);font-size:clamp(6rem,17vw,17rem);font-weight:950;line-height:1;letter-spacing:-.07em;pointer-events:none}
.collaboration-page .collaboration-hero h1{max-width:1050px;margin:.35rem 0 1.1rem;color:#0b3158;font-size:clamp(2.8rem,5.5vw,6rem);line-height:.98;letter-spacing:-.052em;text-wrap:balance}
.collaboration-page .collaboration-hero .lead{max-width:820px;color:#506a83;font-size:clamp(1.15rem,1.65vw,1.42rem);line-height:1.6}
.collaboration-page .collaboration-hero .article-cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.collaboration-page .collaboration-hero .button{min-height:56px;padding:16px 25px}
.collaboration-page .collaboration-intro{padding-top:clamp(56px,7vw,92px)}
.collaboration-page .collaboration-intro .article-grid{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:clamp(28px,5vw,68px);align-items:stretch}
.collaboration-page .collaboration-intro article{padding:clamp(25px,3.5vw,42px);border:1px solid #d8e4ed;border-radius:26px;background:#fff;outline:none;box-shadow:0 18px 46px rgba(8,49,86,.08);transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease}
.collaboration-page .collaboration-intro article:hover,.collaboration-page .collaboration-intro article:focus-visible{transform:translateY(-5px);border-color:rgba(243,107,23,.48);background:radial-gradient(circle at 8% 6%,rgba(255,139,65,.12),transparent 34%),#fff;box-shadow:0 24px 52px rgba(8,49,86,.12),0 0 30px rgba(243,107,23,.16)}
.collaboration-page .collaboration-intro article h2{margin-top:0;color:#0b3158;font-size:clamp(2rem,3.3vw,3.35rem);line-height:1.06}
.collaboration-page .collaboration-intro article p{color:#526b83;font-size:1.02rem;line-height:1.75}
.collaboration-page .article-side-card{display:flex;flex-direction:column;justify-content:center;gap:17px;padding:clamp(28px,4vw,46px);border:1px solid rgba(255,133,54,.58);border-radius:26px;background:radial-gradient(circle at 6% 8%,rgba(243,107,23,.28),transparent 32%),linear-gradient(135deg,#082b50,#1e608f);color:#fff;box-shadow:0 24px 56px rgba(8,51,90,.24);transition:transform .28s ease,box-shadow .28s ease,background .28s ease}
.collaboration-page .article-side-card:hover{transform:translateY(-7px);background:radial-gradient(circle at 6% 8%,rgba(255,125,39,.4),transparent 34%),linear-gradient(135deg,#0b3764,#287bb2);box-shadow:0 30px 64px rgba(8,68,116,.3)}
.collaboration-page .article-side-card>span{align-self:flex-start;padding:7px 12px;border-radius:999px;background:#f36b17;color:#fff;font-size:.76rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.collaboration-page .article-side-card strong{color:#fff;font-size:clamp(1.55rem,2.25vw,2.35rem);line-height:1.16}
.collaboration-page .article-side-card p{margin:0;color:#e6f1f8;font-size:1.02rem;line-height:1.65}
.collaboration-page .collaboration-audience{margin-top:clamp(20px,4vw,46px);padding:clamp(44px,6vw,78px);border:1px solid #d7e4ed;border-radius:30px;background:linear-gradient(145deg,#eef6fb,#fff);box-shadow:0 18px 50px rgba(10,51,87,.07)}
.collaboration-page .collaboration-audience>h2,.collaboration-page .collaboration-values>h2{max-width:980px;color:#0b3158;font-size:clamp(2.1rem,4vw,4rem);line-height:1.04;text-wrap:balance}
.collaboration-page .pill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px}
.collaboration-page .pill-grid span{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:14px;min-height:88px;padding:18px 20px;border:1px solid #d3e2ec;border-radius:18px;background:#fff;color:#0b3158;font-weight:900;line-height:1.3;outline:none;box-shadow:0 10px 28px rgba(8,48,84,.07);transition:transform .26s ease,border-color .26s ease,background .26s ease,color .26s ease,box-shadow .26s ease}
.collaboration-page .pill-grid span::before{content:'✓';display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff1e7;color:#f36b17;font-size:1.2rem;font-weight:950;box-shadow:0 0 0 5px rgba(243,107,23,.08);transition:transform .26s ease,background .26s ease,color .26s ease,box-shadow .26s ease}
.collaboration-page .pill-grid span:hover,.collaboration-page .pill-grid span:focus-visible{transform:translateY(-7px) scale(1.015);border-color:#3e91ca;background:linear-gradient(135deg,#0b3158,#277db5);color:#fff;box-shadow:0 22px 42px rgba(8,67,113,.24)}
.collaboration-page .pill-grid span:hover::before,.collaboration-page .pill-grid span:focus-visible::before{transform:scale(1.18) rotate(-7deg);background:#f36b17;color:#fff;box-shadow:0 0 0 7px rgba(255,255,255,.14),0 0 25px rgba(255,122,32,.45)}
.collaboration-page .collaboration-offer .article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.collaboration-page .collaboration-panel{position:relative;overflow:hidden;padding:clamp(28px,4vw,44px);border:1px solid #d5e2ec;border-radius:24px;background:#fff;outline:none;box-shadow:0 14px 38px rgba(9,49,84,.08);transition:transform .27s ease,border-color .27s ease,background .27s ease,box-shadow .27s ease}
.collaboration-page .collaboration-panel::before{content:'✓';display:grid;place-items:center;width:46px;height:46px;margin-bottom:22px;border-radius:50%;background:#fff0e5;color:#f36b17;font-size:1.3rem;font-weight:950;transition:transform .27s ease,background .27s ease,color .27s ease}
.collaboration-page .collaboration-panel:hover,.collaboration-page .collaboration-panel:focus-visible{transform:translateY(-8px);border-color:#3185bf;background:linear-gradient(135deg,#0a315a,#216b9f);box-shadow:0 25px 52px rgba(7,62,105,.27)}
.collaboration-page .collaboration-panel:hover::before,.collaboration-page .collaboration-panel:focus-visible::before{transform:scale(1.15);background:#f36b17;color:#fff}
.collaboration-page .collaboration-panel h2{margin:0 0 16px;color:#0b3158;font-size:clamp(1.85rem,2.7vw,2.8rem);line-height:1.08;transition:color .27s ease}
.collaboration-page .collaboration-panel p,.collaboration-page .collaboration-panel li{color:#526b83;line-height:1.67;transition:color .27s ease}
.collaboration-page .collaboration-panel:hover h2,.collaboration-page .collaboration-panel:focus-visible h2{color:#fff}
.collaboration-page .collaboration-panel:hover p,.collaboration-page .collaboration-panel:focus-visible p,.collaboration-page .collaboration-panel:hover li,.collaboration-page .collaboration-panel:focus-visible li{color:#e7f2f9}
.collaboration-page .collaboration-panel .check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px;padding:0;list-style:none}
.collaboration-page .collaboration-panel .check-list li{position:relative;padding:11px 12px 11px 35px;border-radius:12px;background:#f3f8fb}
.collaboration-page .collaboration-panel .check-list li::before{content:'✓';position:absolute;left:12px;color:#f36b17;font-weight:950}
.collaboration-page .collaboration-panel:hover .check-list li,.collaboration-page .collaboration-panel:focus-visible .check-list li{background:rgba(255,255,255,.09)}
.collaboration-page .collaboration-values{padding:clamp(44px,6vw,78px);border-radius:30px;background:linear-gradient(135deg,#f1f7fb,#fff)}
.collaboration-page .collaboration-values .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.collaboration-page .collaboration-values article{position:relative;min-height:230px;padding:28px 24px;border:1px solid #d5e2ec;border-radius:22px;background:#fff;outline:none;box-shadow:0 13px 34px rgba(9,49,84,.07);transition:transform .27s ease,border-color .27s ease,background .27s ease,box-shadow .27s ease}
.collaboration-page .collaboration-values article>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff0e5;color:#f36b17;font-size:1.3rem;font-weight:950;transition:transform .27s ease,background .27s ease,color .27s ease}
.collaboration-page .collaboration-values article h3{margin:20px 0 11px;color:#0b3158;font-size:1.4rem;transition:color .27s ease}
.collaboration-page .collaboration-values article p{margin:0;color:#526b83;line-height:1.65;transition:color .27s ease}
.collaboration-page .collaboration-values article:hover,.collaboration-page .collaboration-values article:focus-visible{transform:translateY(-8px);border-color:#3e91ca;background:linear-gradient(135deg,#0b3158,#277db5);box-shadow:0 24px 48px rgba(8,67,113,.24)}
.collaboration-page .collaboration-values article:hover>span,.collaboration-page .collaboration-values article:focus-visible>span{transform:scale(1.17) rotate(-7deg);background:#f36b17;color:#fff}
.collaboration-page .collaboration-values article:hover h3,.collaboration-page .collaboration-values article:focus-visible h3{color:#fff}
.collaboration-page .collaboration-values article:hover p,.collaboration-page .collaboration-values article:focus-visible p{color:#e7f2f9}
.collaboration-page .collaboration-faq .section-disclosure{border-radius:22px;box-shadow:0 14px 38px rgba(8,49,84,.09)}
.collaboration-page .collaboration-faq .section-disclosure:hover,.collaboration-page .collaboration-faq .section-disclosure:focus-within,.collaboration-page .collaboration-faq .section-disclosure[open]{border-color:#3f91c9;background:linear-gradient(135deg,#0b3158,#246f9f);box-shadow:0 24px 48px rgba(8,66,111,.24)}
.collaboration-page .collaboration-faq .section-disclosure:hover summary,.collaboration-page .collaboration-faq .section-disclosure:focus-within summary,.collaboration-page .collaboration-faq .section-disclosure[open] summary{color:#fff}
.collaboration-page .collaboration-faq .section-disclosure[open] .faq-list h3{color:#fff}
.collaboration-page .collaboration-faq .section-disclosure[open] .faq-list p{color:#e7f2f9}
.collaboration-page .collaboration-faq .faq-list{gap:0;padding:2px clamp(24px,4vw,36px) clamp(28px,4vw,38px)}
.collaboration-page .collaboration-faq .faq-list h3{margin:22px 0 8px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);font-size:clamp(1.02rem,1.55vw,1.18rem);line-height:1.4}
.collaboration-page .collaboration-faq .faq-list h3:first-child{margin-top:0;padding-top:8px;border-top:0}
.collaboration-page .collaboration-faq .faq-list p{max-width:1000px;margin:0;color:#526b83;line-height:1.7}
.collaboration-page .collaboration-final{width:min(calc(100% - 44px),1180px);max-width:1180px;margin:clamp(34px,6vw,76px) auto clamp(70px,8vw,110px);padding:clamp(38px,6vw,70px);border:1px solid rgba(255,131,48,.56);border-radius:30px;background:radial-gradient(circle at 88% 18%,rgba(243,107,23,.35),transparent 26%),linear-gradient(135deg,#082b50,#1e608f);color:#fff;box-shadow:0 28px 70px rgba(8,54,94,.27)}
.collaboration-page .collaboration-final .section-kicker{color:#ffb27d}
.collaboration-page .collaboration-final h2{width:100%;margin:.2rem 0 .7rem;color:#fff;font-size:clamp(2.2rem,4vw,4rem)}
.collaboration-page .collaboration-final p:not(.section-kicker){width:100%;max-width:820px;margin:0 0 20px;color:#e3eff7;font-size:1.05rem;line-height:1.7}
@media(max-width:980px){.collaboration-page .collaboration-intro .article-grid,.collaboration-page .collaboration-offer .article-grid{grid-template-columns:1fr}.collaboration-page .pill-grid,.collaboration-page .collaboration-values .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collaboration-page .collaboration-panel .check-list{grid-template-columns:1fr}}
@media(max-width:640px){.collaboration-page .collaboration-hero{padding-top:52px;padding-bottom:60px}.collaboration-page .collaboration-hero h1{font-size:clamp(2.35rem,12vw,3.4rem)}.collaboration-page .collaboration-audience,.collaboration-page .collaboration-values{padding:30px 18px;border-radius:22px}.collaboration-page .pill-grid,.collaboration-page .collaboration-values .feature-grid{grid-template-columns:1fr}.collaboration-page .pill-grid span{min-height:78px}.collaboration-page .collaboration-final{width:min(calc(100% - 28px),1180px);padding:32px 22px}.collaboration-page .collaboration-final .button{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.collaboration-page .pill-grid span,.collaboration-page .pill-grid span::before,.collaboration-page .collaboration-panel,.collaboration-page .collaboration-panel::before,.collaboration-page .collaboration-values article,.collaboration-page .collaboration-values article>span{transition:none}.collaboration-page :is(.pill-grid span,.collaboration-panel,.collaboration-values article):hover{transform:none}}

/* Nieuwe praktijkgerichte trainingen: jeugdgroepen en AMV */
.featured-training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:0 0 34px}
.featured-training-grid article{position:relative;overflow:hidden;padding:32px;border:1px solid #d5e2ec;border-radius:24px;background:#fff;box-shadow:0 16px 38px rgba(9,49,84,.09);transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}
.featured-training-grid article:hover{transform:translateY(-7px);border-color:#3b8fc7;background:linear-gradient(135deg,#0a315a,#236f9f);box-shadow:0 25px 50px rgba(8,62,105,.24)}
.featured-training-check{display:grid;place-items:center;width:48px;height:48px;margin-bottom:18px;border-radius:50%;background:#fff0e5;color:#f36b17;font-size:1.45rem;font-weight:950;transition:transform .25s ease,background .25s ease,color .25s ease}
.featured-training-grid article:hover .featured-training-check{transform:scale(1.16) rotate(-7deg);background:#f36b17;color:#fff}
.featured-training-grid h3{margin:5px 0 12px;color:#0b3158;font-size:clamp(1.5rem,2.2vw,2.15rem);line-height:1.12}.featured-training-grid article>p:not(.section-kicker){min-height:3.5em;color:#526b83;line-height:1.65}.featured-training-grid article>div{display:flex;flex-wrap:wrap;gap:11px;margin-top:23px}.featured-training-grid article:hover :is(h3,p){color:#fff}.featured-training-grid article:hover .section-kicker{color:#ffb27d}.featured-training-grid .button{min-height:48px}
.practice-training-page{background:#f6f9fc;color:#0b3158}.practice-training-page main{overflow:hidden}.practice-training-page .pt-hero,.practice-training-page .pt-section{width:min(calc(100% - 44px),1180px);margin-inline:auto}.practice-training-page .pt-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:clamp(34px,6vw,76px);align-items:center;padding:clamp(70px,9vw,120px) 0}.practice-training-page .breadcrumb{display:inline-block;margin-bottom:24px;color:#58728a;font-weight:800;text-decoration:none}.practice-training-page .eyebrow,.practice-training-page .section-kicker{color:#f36b17;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.practice-training-page h1{max-width:820px;margin:.25rem 0 1rem;color:#0b3158;font-size:clamp(3rem,6.7vw,6.2rem);line-height:.96;letter-spacing:-.05em}.practice-training-page .pt-lead{margin:0 0 16px;color:#f36b17;font-size:clamp(1.45rem,2.4vw,2.15rem);font-weight:850;line-height:1.18}.practice-training-page .pt-hero p:not(.eyebrow,.pt-lead){max-width:750px;color:#526b83;font-size:1.08rem;line-height:1.75}.practice-training-page .pt-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.practice-training-page .pt-hero-card{padding:clamp(30px,4vw,48px);border:1px solid rgba(255,125,35,.58);border-radius:28px;background:linear-gradient(145deg,#092d52,#236c9d);color:#fff;box-shadow:0 28px 65px rgba(7,54,93,.25);transition:transform .25s ease,box-shadow .25s ease}.practice-training-page .pt-hero-card:hover{transform:translateY(-8px);box-shadow:0 34px 72px rgba(7,54,93,.33)}.practice-training-page .pt-hero-card>span,.practice-training-page .pt-case>span{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#f36b17;color:#fff;font-size:1.8rem;font-weight:950;box-shadow:0 0 0 9px rgba(243,107,23,.18)}.practice-training-page .pt-hero-card h2{margin:28px 0 12px;color:#fff;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.08}.practice-training-page .pt-hero-card p{color:#e4f0f8;line-height:1.7}.practice-training-page .pt-section{padding:clamp(58px,8vw,104px) 0}.practice-training-page .pt-section h2{margin:.25rem 0 1rem;color:#0b3158;font-size:clamp(2.2rem,4.2vw,4rem);line-height:1.05;letter-spacing:-.035em}.practice-training-page .pt-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,7vw,90px)}.practice-training-page .pt-intro>div:last-child{padding-top:25px}.practice-training-page .pt-intro p:not(.section-kicker){color:#526b83;font-size:1.08rem;line-height:1.8}.practice-training-page .pt-soft{width:100%;max-width:none;padding-inline:max(22px,calc((100% - 1180px)/2));background:#eef5f9}.practice-training-page .pt-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}.practice-training-page .pt-card-grid article{padding:27px;border:1px solid #d3e0ea;border-radius:21px;background:#fff;box-shadow:0 13px 30px rgba(9,49,84,.06);transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.practice-training-page .pt-card-grid article:hover{transform:translateY(-7px);background:linear-gradient(135deg,#0b3158,#287daf);box-shadow:0 23px 44px rgba(7,61,103,.23)}.practice-training-page .pt-card-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff0e5;color:#f36b17;font-weight:950;transition:transform .25s ease,background .25s ease,color .25s ease}.practice-training-page .pt-card-grid article:hover>span{transform:scale(1.15);background:#f36b17;color:#fff}.practice-training-page .pt-card-grid h3{margin:19px 0 8px;color:#0b3158;font-size:1.35rem}.practice-training-page .pt-card-grid p{margin:0;color:#526b83;line-height:1.6}.practice-training-page .pt-card-grid article:hover :is(h3,p){color:#fff}.practice-training-page .pt-question-panel{padding:clamp(32px,6vw,65px);border:1px solid #d5e2ec;border-radius:28px;background:#fff;box-shadow:0 18px 45px rgba(9,49,84,.08)}.practice-training-page .pt-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;margin:30px 0 0;padding:0;list-style:none}.practice-training-page .pt-question-grid li{position:relative;padding:16px 18px 16px 48px;border-radius:14px;background:#f1f6fa;color:#163c60;font-weight:750;transition:transform .2s ease,background .2s ease,color .2s ease}.practice-training-page .pt-question-grid li::before{content:'✓';position:absolute;left:18px;color:#f36b17;font-weight:950}.practice-training-page .pt-question-grid li:hover{transform:translateX(5px);background:#165e8e;color:#fff}.practice-training-page .pt-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.practice-training-page .pt-split article{padding:clamp(30px,4vw,48px);border:1px solid #d5e2ec;border-radius:25px;background:#fff}.practice-training-page .pt-split p{color:#526b83;line-height:1.75}.practice-training-page .pt-case{background:linear-gradient(145deg,#0a315a,#236f9f)!important}.practice-training-page .pt-case h2{color:#fff}.practice-training-page .pt-case p{color:#e6f0f7}.practice-training-page .pt-audience{padding:clamp(48px,7vw,82px);border-radius:30px;background:#eef5f9}.practice-training-page .pt-pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.practice-training-page .pt-pills span{position:relative;padding:14px 20px 14px 43px;border:1px solid #d4e1eb;border-radius:999px;background:#fff;color:#173d61;font-weight:760;transition:transform .22s ease,background .22s ease,color .22s ease}.practice-training-page .pt-pills span::before{content:'•';position:absolute;left:20px;color:#f36b17;font-size:1.5rem;line-height:.8}.practice-training-page .pt-pills span:hover{transform:translateY(-4px);background:#0f4e7a;color:#fff}.practice-training-page .pt-practical{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.practice-training-page .pt-practical p{color:#526b83;line-height:1.75}.practice-training-page .pt-practical dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.practice-training-page .pt-practical dl div{padding:20px;border:1px solid #d5e2ec;border-radius:16px;background:#fff}.practice-training-page dt{color:#f36b17;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.practice-training-page dd{margin:7px 0 0;color:#0b3158;font-weight:800}.practice-training-page .pt-cta{display:flex;justify-content:space-between;gap:35px;align-items:center;margin-bottom:24px;padding:clamp(34px,5vw,58px);border:1px solid #d5e2ec;border-radius:27px;background:#fff}.practice-training-page .pt-cta h2{font-size:clamp(2rem,3.4vw,3.25rem)}.practice-training-page .pt-cta p:not(.section-kicker){color:#526b83}.practice-training-page .pt-cta-dark{margin-bottom:80px;border-color:rgba(255,123,35,.55);background:linear-gradient(135deg,#082c51,#1f6798)}.practice-training-page .pt-cta-dark h2{color:#fff}.practice-training-page .pt-cta-dark p:not(.section-kicker){color:#e5f0f7}.practice-training-page footer{display:flex;justify-content:space-between;padding:30px max(22px,calc((100% - 1180px)/2));background:#082b50;color:#fff}.practice-training-page footer a{color:#fff}
@media(max-width:900px){.featured-training-grid,.practice-training-page .pt-hero,.practice-training-page .pt-intro,.practice-training-page .pt-split,.practice-training-page .pt-practical{grid-template-columns:1fr}.practice-training-page .pt-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-training-page .pt-hero{padding-top:55px}.practice-training-page .pt-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.featured-training-grid,.practice-training-page .pt-card-grid,.practice-training-page .pt-question-grid,.practice-training-page .pt-practical dl{grid-template-columns:1fr}.practice-training-page .pt-hero,.practice-training-page .pt-section{width:min(calc(100% - 28px),1180px)}.practice-training-page .pt-soft{width:100%;padding-inline:14px}.practice-training-page h1{font-size:clamp(2.6rem,14vw,4.1rem)}.practice-training-page .pt-actions,.practice-training-page .pt-actions .button,.practice-training-page .pt-cta .button{width:100%}.practice-training-page .pt-actions .button,.practice-training-page .pt-cta .button{justify-content:center}.practice-training-page .pt-audience{padding:30px 18px}.practice-training-page footer{flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){.featured-training-grid article,.featured-training-check,.practice-training-page :is(.pt-hero-card,.pt-card-grid article,.pt-card-grid article>span,.pt-question-grid li,.pt-pills span){transition:none}.featured-training-grid article:hover,.practice-training-page :is(.pt-hero-card,.pt-card-grid article,.pt-question-grid li,.pt-pills span):hover{transform:none}}

/* Verfijnde presentatie uitbuiting, signalen en eigen casuïstiek */
.amv-training-page .amv-risk-section{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:28px;align-items:stretch}
.amv-training-page .amv-risk-section>article{position:relative;overflow:hidden;padding:clamp(36px,5vw,58px);border-radius:28px;box-shadow:0 20px 52px rgba(8,49,84,.09)}
.amv-training-page .amv-signals{border-top:4px solid #f36b17!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important}
.amv-training-page .amv-signals::after{content:'';position:absolute;right:-75px;top:-85px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(243,107,23,.12),rgba(243,107,23,0) 70%);pointer-events:none}
.amv-training-page .amv-signals h2{font-size:clamp(2.45rem,4.2vw,4.15rem);line-height:1.02}.amv-training-page .amv-signals h2 span{color:#2877aa}
.amv-training-page .amv-risk-intro{max-width:570px;margin:18px 0 25px!important;color:#526b83!important;font-size:1.03rem;line-height:1.65!important}
.amv-training-page .amv-signals ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.amv-training-page .amv-signals li{position:relative;padding:13px 13px 13px 40px;border:1px solid #e0e9f0;border-radius:13px;background:#f4f8fb;color:#173d60;font-weight:760;line-height:1.35;transition:transform .22s ease,background .22s ease,color .22s ease,border-color .22s ease}
.amv-training-page .amv-signals li::before{content:'✓';position:absolute;left:15px;color:#f36b17;font-weight:950}.amv-training-page .amv-signals li:hover{transform:translateY(-3px);border-color:#2e81b8;background:#155d8c;color:#fff}
.amv-training-page .amv-risk-note{margin:23px 0 0!important;padding:17px 19px;border-left:4px solid #f36b17;border-radius:5px 13px 13px 5px;background:#fff1e7;color:#274b6b!important;line-height:1.55!important}
.amv-training-page .amv-case-card{display:flex;flex-direction:column;border:1px solid rgba(255,144,70,.62)!important;background:radial-gradient(circle at 90% 10%,rgba(255,139,59,.23),transparent 30%),linear-gradient(145deg,#082d53,#216c9e)!important;box-shadow:0 24px 58px rgba(6,54,95,.26)!important}
.amv-training-page .amv-case-card::after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);pointer-events:none}
.amv-training-page .amv-case-top{display:flex;align-items:center;gap:18px;margin-bottom:30px}.amv-training-page .amv-case-top>span{display:grid;place-items:center;width:62px;height:62px;flex:0 0 62px;border-radius:50%;background:#f36b17;color:#fff;font-size:1.9rem;font-weight:950;box-shadow:0 0 0 10px rgba(243,107,23,.17);transition:transform .25s ease,box-shadow .25s ease}.amv-training-page .amv-case-card:hover .amv-case-top>span{transform:scale(1.08) rotate(-6deg);box-shadow:0 0 0 13px rgba(243,107,23,.14),0 8px 25px rgba(0,0,0,.18)}
.amv-training-page .amv-case-top p{margin:0!important;color:#ffb27f!important;font-size:.82rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.amv-training-page .amv-case-card h2{margin:0 0 16px;font-size:clamp(2.55rem,4.4vw,4.3rem)}.amv-training-page .amv-case-card>p:not(.amv-privacy){margin:0 0 24px;color:#e3eef6;font-size:1.04rem;line-height:1.7}
.amv-training-page .amv-case-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:25px}.amv-training-page .amv-case-steps span{position:relative;padding:11px 12px 11px 33px;border:1px solid rgba(255,255,255,.15);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:.9rem;font-weight:750}.amv-training-page .amv-case-steps span::before{content:'✓';position:absolute;left:12px;color:#ff9a55;font-weight:950}
.amv-training-page .amv-privacy{margin:auto 0 0!important;padding:18px 20px;border:1px solid rgba(255,155,88,.55);border-radius:15px;background:#fff4eb;color:#173d60!important;line-height:1.55!important}.amv-training-page .amv-privacy strong{color:#d65300;font-size:.86rem;letter-spacing:.06em;text-transform:uppercase}
@media(max-width:900px){.amv-training-page .amv-risk-section{grid-template-columns:1fr}.amv-training-page .amv-signals ul{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.amv-training-page .amv-risk-section>article{padding:30px 22px}.amv-training-page .amv-signals ul,.amv-training-page .amv-case-steps{grid-template-columns:1fr}.amv-training-page .amv-case-top{margin-bottom:24px}}

/* Hoog contrast voor tekst in de blauwe introkaarten */
.practice-training-page .pt-hero .pt-hero-card p,
.practice-training-page .pt-hero .pt-hero-card p:not(.eyebrow,.pt-lead){color:#f2f7fb;font-size:1.05rem;font-weight:550;line-height:1.72;text-shadow:0 1px 1px rgba(0,27,52,.18)}

/* Compact tweeluik praktijkervaring en eigen casuïstiek */
.practice-training-page .youth-practice-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch;padding-block:clamp(48px,6vw,74px)}
.practice-training-page .youth-practice-section>article{padding:clamp(32px,4vw,46px);border-radius:26px;box-shadow:0 18px 45px rgba(8,49,84,.08)}
.practice-training-page .youth-experience-card{border-top:4px solid #f36b17!important;background:linear-gradient(180deg,#fff,#fbfdff)!important}
.practice-training-page .youth-experience-card h2{margin:.25rem 0 16px;font-size:clamp(2.45rem,3.9vw,3.75rem);line-height:1.01}
.practice-training-page .youth-experience-card>p:not(.section-kicker,.youth-model-note){margin:0 0 21px;color:#526b83;line-height:1.65}
.practice-training-page .youth-experience-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:23px}
.practice-training-page .youth-experience-pills span{padding:9px 13px;border:1px solid #d6e2ec;border-radius:999px;background:#f2f7fa;color:#173d60;font-size:.87rem;font-weight:780;transition:background .2s ease,color .2s ease,transform .2s ease}
.practice-training-page .youth-experience-pills span:hover{transform:translateY(-2px);background:#155e8f;color:#fff}
.practice-training-page .youth-model-note{margin:0;padding:16px 18px;border-left:4px solid #f36b17;border-radius:5px 13px 13px 5px;background:#fff2e9;color:#405f7a!important;font-size:.91rem;line-height:1.55!important}
.practice-training-page .youth-case-card{display:flex;flex-direction:column;border-color:rgba(255,139,61,.58)!important;background:radial-gradient(circle at 90% 9%,rgba(255,134,50,.22),transparent 30%),linear-gradient(145deg,#082d53,#216c9e)!important}
.practice-training-page .youth-case-heading{display:flex;align-items:center;gap:20px;margin-bottom:20px}
.practice-training-page .youth-case-heading>span{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:50%;background:#f36b17;color:#fff;font-size:1.75rem;font-weight:950;box-shadow:0 0 0 9px rgba(243,107,23,.18);transition:transform .23s ease}
.practice-training-page .youth-case-card:hover .youth-case-heading>span{transform:scale(1.1) rotate(-7deg)}
.practice-training-page .youth-case-heading p{margin:0 0 4px!important;color:#ffb27f!important;font-size:.78rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.practice-training-page .youth-case-heading h2{margin:0;color:#fff;font-size:clamp(2.35rem,3.8vw,3.7rem)}
.practice-training-page .youth-case-card>p:not(.youth-privacy){margin:0 0 21px;color:#e6f0f7;line-height:1.65}
.practice-training-page .youth-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:21px}
.practice-training-page .youth-case-grid span{position:relative;padding:10px 11px 10px 32px;border:1px solid rgba(255,255,255,.15);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:.88rem;font-weight:750}
.practice-training-page .youth-case-grid span::before{content:'✓';position:absolute;left:11px;color:#ff9f60;font-weight:950}
.practice-training-page .youth-privacy{margin:auto 0 0!important;padding:15px 18px;border:1px solid rgba(255,148,77,.56);border-radius:14px;background:#fff4eb;color:#173d60!important;line-height:1.5!important}
.practice-training-page .youth-privacy strong{color:#d65300;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}
@media(max-width:900px){.practice-training-page .youth-practice-section{grid-template-columns:1fr}}
@media(max-width:580px){.practice-training-page .youth-practice-section>article{padding:28px 20px}.practice-training-page .youth-case-grid{grid-template-columns:1fr}.practice-training-page .youth-case-heading{align-items:flex-start}}

/* Interactieve praktische-informatievakken */
.practice-training-page .pt-practical dl div{position:relative;overflow:hidden;transition:transform .24s ease,border-color .24s ease,background .24s ease,box-shadow .24s ease}
.practice-training-page .pt-practical dl div::after{content:'';position:absolute;right:-28px;top:-35px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.09);transform:scale(0);transition:transform .28s ease}
.practice-training-page .pt-practical dl div:hover,.practice-training-page .pt-practical dl div:focus-within{transform:translateY(-6px);border-color:#3c91c9;background:linear-gradient(135deg,#0b3158,#287eb3);box-shadow:0 18px 34px rgba(7,62,105,.22)}
.practice-training-page .pt-practical dl div:hover::after,.practice-training-page .pt-practical dl div:focus-within::after{transform:scale(1)}
.practice-training-page .pt-practical dt,.practice-training-page .pt-practical dd{position:relative;z-index:1;transition:color .24s ease}
.practice-training-page .pt-practical dl div:hover dt,.practice-training-page .pt-practical dl div:focus-within dt{color:#ffad75}
.practice-training-page .pt-practical dl div:hover dd,.practice-training-page .pt-practical dl div:focus-within dd{color:#fff}
@media(prefers-reduced-motion:reduce){.practice-training-page .pt-practical dl div,.practice-training-page .pt-practical dl div::after{transition:none}.practice-training-page .pt-practical dl div:hover{transform:none}}

/* Compactere uitvoering van het AMV-signalenblok */
.amv-training-page .amv-risk-section{align-items:start;padding-block:clamp(42px,5vw,64px)}
.amv-training-page .amv-risk-section>article{padding:clamp(30px,3.4vw,42px);min-height:0}
.amv-training-page .amv-signals h2{margin-bottom:12px;font-size:clamp(2.25rem,3.5vw,3.4rem);line-height:1}
.amv-training-page .amv-risk-intro{margin:12px 0 18px!important;font-size:.98rem;line-height:1.55!important}
.amv-training-page .amv-signals ul{gap:8px}.amv-training-page .amv-signals li{padding-top:10px;padding-bottom:10px;font-size:.91rem}
.amv-training-page .amv-risk-note{margin-top:16px!important;padding:14px 17px;font-size:.91rem}
.amv-training-page .amv-case-top{margin-bottom:22px}.amv-training-page .amv-case-top>span{width:54px;height:54px;flex-basis:54px;font-size:1.65rem;box-shadow:0 0 0 8px rgba(243,107,23,.17)}
.amv-training-page .amv-case-card h2{margin-bottom:12px;font-size:clamp(2.35rem,3.7vw,3.55rem);line-height:1}
.amv-training-page .amv-case-card>p:not(.amv-privacy){margin-bottom:17px;font-size:.98rem;line-height:1.6}
.amv-training-page .amv-case-steps{gap:8px;margin-bottom:16px}.amv-training-page .amv-case-steps span{padding-top:9px;padding-bottom:9px;font-size:.86rem}
.amv-training-page .amv-privacy{margin:0!important;padding:14px 17px;font-size:.91rem}

/* Compacte AMV-introkaart */
.amv-training-page .pt-hero-card{padding:clamp(28px,3.5vw,40px)}
.amv-training-page .pt-hero-card>span{width:52px;height:52px;font-size:1.6rem;box-shadow:0 0 0 8px rgba(243,107,23,.17)}
.amv-training-page .pt-hero-card h2{margin:22px 0 10px;font-size:clamp(1.75rem,2.7vw,2.45rem);line-height:1.08;letter-spacing:-.025em}
.amv-training-page .pt-hero .pt-hero-card p,.amv-training-page .pt-hero .pt-hero-card p:not(.eyebrow,.pt-lead){margin:0;font-size:.98rem;line-height:1.6}
@media(max-width:620px){.amv-training-page .pt-hero-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 18px;padding:25px 22px;border-radius:22px}.amv-training-page .pt-hero-card>span{width:48px;height:48px;font-size:1.45rem;box-shadow:0 0 0 7px rgba(243,107,23,.16)}.amv-training-page .pt-hero-card h2{align-self:center;margin:0;font-size:clamp(1.7rem,8vw,2.15rem);line-height:1.06}.amv-training-page .pt-hero .pt-hero-card p,.amv-training-page .pt-hero .pt-hero-card p:not(.eyebrow,.pt-lead){grid-column:1/-1;margin-top:19px;font-size:.94rem;line-height:1.55}}

/* AMV: praktijk, video, BuddyCoach en bronpublicatie */
.amv-training-page .amv-practice-evidence{width:100%;max-width:none;padding-inline:max(22px,calc((100% - 1180px)/2));background:linear-gradient(180deg,#edf5fa,#f8fbfd)}
.amv-training-page .amv-practice-heading{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:12px 70px;align-items:start;margin-bottom:34px}.amv-training-page .amv-practice-heading .section-kicker{grid-column:1/-1;margin:0}.amv-training-page .amv-practice-heading h2{margin:0;font-size:clamp(2.4rem,4.3vw,4.2rem)}.amv-training-page .amv-practice-heading>p:last-child{margin:5px 0 0;color:#526b83;font-size:1.05rem;line-height:1.75}
.amv-training-page .amv-media-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:22px;align-items:stretch}.amv-training-page .amv-video-card,.amv-training-page .amv-abdou-card{overflow:hidden;border:1px solid #d4e2ec;border-radius:25px;background:#fff;box-shadow:0 18px 44px rgba(8,49,84,.09)}
.amv-training-page .amv-content-warning{display:flex;gap:14px;align-items:center;padding:15px 20px;border-bottom:1px solid #f4c7aa;background:#fff1e7;color:#6d3514}.amv-training-page .amv-content-warning>span{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;border-radius:50%;background:#f36b17;color:#fff;font-weight:950}.amv-training-page .amv-content-warning p{margin:0;font-size:.88rem;line-height:1.45}.amv-training-page .amv-content-warning strong{display:block;color:#b94500;text-transform:uppercase;letter-spacing:.05em}
.amv-training-page .amv-video-card video{display:block;width:100%;max-height:520px;aspect-ratio:16/9;background:#071d32;object-fit:contain}.amv-training-page .amv-video-caption{padding:24px 27px}.amv-training-page .amv-video-caption>span{color:#f36b17;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.amv-training-page .amv-video-caption h3{margin:7px 0 8px;color:#0b3158;font-size:1.55rem}.amv-training-page .amv-video-caption p{margin:0 0 10px;color:#526b83;line-height:1.6}.amv-training-page .amv-video-caption small{color:#71879a}
.amv-training-page .amv-abdou-card{position:relative;padding:clamp(28px,4vw,42px);border-color:rgba(255,137,59,.56);background:radial-gradient(circle at 90% 8%,rgba(255,138,56,.23),transparent 28%),linear-gradient(145deg,#082d53,#216c9e);color:#fff}.amv-training-page .amv-abdou-mark{display:grid;place-items:center;width:58px;height:58px;margin-bottom:24px;border-radius:50%;background:#f36b17;color:#fff;font-size:1.65rem;font-weight:950;box-shadow:0 0 0 9px rgba(243,107,23,.17)}.amv-training-page .amv-abdou-card .section-kicker{color:#ffb27f}.amv-training-page .amv-abdou-card h3{margin:8px 0 14px;color:#fff;font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.08}.amv-training-page .amv-abdou-card p:not(.section-kicker){color:#e4eff7;line-height:1.65}.amv-training-page .amv-abdou-card ul{display:grid;gap:8px;margin:22px 0 0;padding:0;list-style:none}.amv-training-page .amv-abdou-card li{position:relative;padding:10px 12px 10px 34px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(255,255,255,.08);font-weight:730}.amv-training-page .amv-abdou-card li::before{content:'✓';position:absolute;left:12px;color:#ff9d5c;font-weight:950}
.amv-training-page .amv-publication{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:35px;margin-top:24px;padding:clamp(28px,4vw,42px);border:1px solid #d4e2ec;border-radius:25px;background:#fff;box-shadow:0 18px 44px rgba(8,49,84,.08)}.amv-training-page .amv-publication-copy h3{margin:7px 0 13px;color:#0b3158;font-size:clamp(1.75rem,2.8vw,2.5rem);line-height:1.1}.amv-training-page .amv-publication-copy>p:not(.section-kicker){color:#526b83;line-height:1.65}.amv-training-page .amv-source{padding:15px 17px;border-left:4px solid #f36b17;border-radius:5px 12px 12px 5px;background:#fff2e9;font-size:.9rem}.amv-training-page .amv-source-note{font-size:.85rem;font-weight:800}.amv-training-page .amv-publication-pages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.amv-training-page .amv-publication-pages a{position:relative;overflow:hidden;display:block;min-height:230px;border:1px solid #d6e2eb;border-radius:14px;background:#eef4f8;box-shadow:0 9px 22px rgba(8,49,84,.08);transition:transform .22s ease,box-shadow .22s ease}.amv-training-page .amv-publication-pages a:hover,.amv-training-page .amv-publication-pages a:focus-visible{transform:translateY(-5px);box-shadow:0 17px 32px rgba(8,60,102,.18)}.amv-training-page .amv-publication-pages img{width:100%;height:100%;min-height:230px;object-fit:cover;object-position:top}.amv-training-page .amv-publication-pages span{position:absolute;left:8px;bottom:8px;padding:7px 10px;border-radius:999px;background:rgba(6,38,67,.9);color:#fff;font-size:.75rem;font-weight:850}
@media(max-width:900px){.amv-training-page .amv-practice-heading,.amv-training-page .amv-media-grid,.amv-training-page .amv-publication{grid-template-columns:1fr}.amv-training-page .amv-publication-pages a,.amv-training-page .amv-publication-pages img{min-height:280px}}
@media(max-width:620px){.amv-training-page .amv-practice-evidence{padding-inline:14px}.amv-training-page .amv-practice-heading{gap:8px;margin-bottom:24px}.amv-training-page .amv-content-warning{align-items:flex-start;padding:14px}.amv-training-page .amv-publication{padding:22px 16px}.amv-training-page .amv-publication-pages{grid-template-columns:repeat(2,minmax(0,1fr))}.amv-training-page .amv-publication-pages a,.amv-training-page .amv-publication-pages img{min-height:245px}}
@media(prefers-reduced-motion:reduce){.amv-training-page .amv-publication-pages a{transition:none}.amv-training-page .amv-publication-pages a:hover{transform:none}}

/* Persoonlijk praktijkverhaal AMV-training */
.amv-training-page .amv-pure-practice{position:relative;display:grid;grid-template-columns:82px minmax(0,1fr);gap:28px;margin:0 0 24px;padding:clamp(30px,4.5vw,52px);overflow:hidden;border:1px solid rgba(255,135,55,.55);border-radius:26px;background:radial-gradient(circle at 92% 12%,rgba(255,139,57,.24),transparent 27%),linear-gradient(135deg,#082d53,#1e6798);box-shadow:0 22px 52px rgba(7,54,94,.22)}
.amv-training-page .amv-pure-practice::after{content:'';position:absolute;right:-55px;bottom:-75px;width:210px;height:210px;border:1px solid rgba(255,255,255,.09);border-radius:50%;pointer-events:none}
.amv-training-page .amv-pure-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#f36b17;color:#fff;font-family:Georgia,serif;font-size:3.6rem;line-height:1;box-shadow:0 0 0 10px rgba(243,107,23,.16)}
.amv-training-page .amv-pure-practice .section-kicker{margin:0 0 8px;color:#ffb27d}.amv-training-page .amv-pure-practice h3{max-width:800px;margin:0 0 20px;color:#fff;font-size:clamp(2rem,3.4vw,3.35rem);line-height:1.06;letter-spacing:-.025em}.amv-training-page .amv-pure-practice p:not(.section-kicker){max-width:970px;margin:0 0 15px;color:#e5f0f7;font-size:1.03rem;line-height:1.72}.amv-training-page .amv-pure-practice .amv-pure-closing{margin:22px 0 0!important;padding:17px 19px;border-left:4px solid #f36b17;border-radius:5px 13px 13px 5px;background:rgba(255,255,255,.09);color:#fff!important;font-weight:780}
@media(max-width:680px){.amv-training-page .amv-pure-practice{grid-template-columns:1fr;gap:22px;padding:28px 21px}.amv-training-page .amv-pure-mark{width:55px;height:55px;font-size:2.8rem;box-shadow:0 0 0 8px rgba(243,107,23,.15)}.amv-training-page .amv-pure-practice p:not(.section-kicker){font-size:.96rem;line-height:1.65}}

/* AMV: landelijke kaart met alle twaalf provincies */
.amv-training-page .amv-national-card{display:block;position:relative;overflow:hidden;padding:30px 34px 25px;border:1px solid rgba(255,132,47,.72);background:radial-gradient(circle at 88% 12%,rgba(255,142,64,.2),transparent 27%),linear-gradient(145deg,#082e55,#216e9f);color:#fff}
.amv-training-page .amv-national-card::after{content:'';position:absolute;inset:auto -75px -95px auto;width:240px;height:240px;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}
.amv-training-page .amv-national-top{position:relative;z-index:2;display:flex;gap:19px;align-items:center}.amv-training-page .amv-national-check{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:50%;background:#f36b17;color:#fff;font-size:1.6rem;font-weight:950;box-shadow:0 0 0 8px rgba(243,107,23,.18)}
.amv-training-page .amv-national-label{margin:0 0 3px!important;color:#ffb381!important;font-size:.72rem!important;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.amv-training-page .amv-national-top h2{margin:0!important;color:#fff;font-size:clamp(1.7rem,2.5vw,2.35rem)!important;line-height:1.05!important}
.amv-training-page .amv-map-stage{position:relative;display:grid;place-items:center;height:270px;margin:15px 0 10px}.amv-training-page .amv-netherlands-map{position:relative;width:139px;height:222px;transform:rotate(-4deg);clip-path:polygon(48% 0,72% 5%,77% 18%,91% 25%,80% 36%,90% 44%,73% 54%,75% 67%,62% 72%,67% 88%,54% 100%,40% 88%,41% 73%,27% 67%,31% 54%,12% 48%,23% 35%,16% 24%,34% 16%);background:linear-gradient(150deg,#fff 0%,#dceaf3 62%,#9fc4dc 100%);filter:drop-shadow(0 16px 18px rgba(0,18,36,.34))}
.amv-training-page .amv-netherlands-map::before{content:'';position:absolute;inset:10px;clip-path:inherit;background:linear-gradient(145deg,rgba(15,74,120,.18),transparent 58%)}.amv-training-page .amv-netherlands-map i{position:absolute;z-index:2;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#f36b17;box-shadow:0 0 0 5px rgba(243,107,23,.2)}.amv-training-page .amv-netherlands-map i:nth-child(1){top:23px;right:32px}.amv-training-page .amv-netherlands-map i:nth-child(2){top:63px;right:18px}.amv-training-page .amv-netherlands-map i:nth-child(3){top:91px;left:38px}.amv-training-page .amv-netherlands-map i:nth-child(4){top:123px;right:28px}.amv-training-page .amv-netherlands-map i:nth-child(5){top:153px;left:34px}.amv-training-page .amv-netherlands-map i:nth-child(6){bottom:25px;right:38px}
.amv-training-page .amv-province-ticker{position:absolute;left:50%;bottom:4px;width:min(260px,92%);height:48px;transform:translateX(-50%);overflow:hidden;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(5,36,66,.87);box-shadow:0 12px 25px rgba(0,22,42,.25);backdrop-filter:blur(6px)}.amv-training-page .amv-province-ticker span{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:translateY(100%);color:#fff;font-size:.96rem;font-weight:900;letter-spacing:.02em;animation:amvProvinceRise 36s ease-in-out infinite}
.amv-training-page .amv-province-ticker span:nth-child(2){animation-delay:3s}.amv-training-page .amv-province-ticker span:nth-child(3){animation-delay:6s}.amv-training-page .amv-province-ticker span:nth-child(4){animation-delay:9s}.amv-training-page .amv-province-ticker span:nth-child(5){animation-delay:12s}.amv-training-page .amv-province-ticker span:nth-child(6){animation-delay:15s}.amv-training-page .amv-province-ticker span:nth-child(7){animation-delay:18s}.amv-training-page .amv-province-ticker span:nth-child(8){animation-delay:21s}.amv-training-page .amv-province-ticker span:nth-child(9){animation-delay:24s}.amv-training-page .amv-province-ticker span:nth-child(10){animation-delay:27s}.amv-training-page .amv-province-ticker span:nth-child(11){animation-delay:30s}.amv-training-page .amv-province-ticker span:nth-child(12){animation-delay:33s}
@keyframes amvProvinceRise{0%{opacity:0;transform:translateY(100%)}2.5%,6%{opacity:1;transform:translateY(0)}8.5%,100%{opacity:0;transform:translateY(-100%)}}
.amv-training-page .pt-hero .amv-national-message,.amv-training-page .pt-hero .amv-national-message:not(.eyebrow,.pt-lead){position:relative;z-index:2;margin:12px 0 0!important;color:#e7f1f7!important;font-size:.9rem!important;line-height:1.5!important;text-align:center}
@media(max-width:620px){.amv-training-page .amv-national-card{display:block;padding:25px 20px 22px}.amv-training-page .amv-national-top{gap:16px}.amv-training-page .amv-national-check{width:48px;height:48px;flex-basis:48px}.amv-training-page .amv-map-stage{height:245px}.amv-training-page .amv-netherlands-map{width:124px;height:200px}.amv-training-page .amv-province-ticker{height:45px}.amv-training-page .pt-hero .amv-national-message,.amv-training-page .pt-hero .amv-national-message:not(.eyebrow,.pt-lead){margin-top:11px!important;font-size:.86rem!important}}
@media(prefers-reduced-motion:reduce){.amv-training-page .amv-province-ticker span{display:none;animation:none}.amv-training-page .amv-province-ticker span:first-child{display:grid;opacity:1;transform:none}}

/* AMV: krachtiger kleurcontrast voor introductie en praktijkbewijs */
.amv-training-page .pt-intro{position:relative;isolation:isolate;width:min(calc(100% - 44px),1240px);margin-block:24px 38px;padding:clamp(42px,6vw,72px);overflow:hidden;border:1px solid rgba(255,139,61,.58);border-radius:30px;background:radial-gradient(circle at 92% 12%,rgba(255,142,65,.24),transparent 28%),linear-gradient(135deg,#082e55 0%,#174f7b 52%,#2779aa 100%);box-shadow:0 24px 58px rgba(7,52,91,.21)}
.amv-training-page .pt-intro::after{content:'';position:absolute;z-index:-1;right:-75px;bottom:-115px;width:300px;height:300px;border:1px solid rgba(255,255,255,.1);border-radius:50%}
.amv-training-page .pt-intro .section-kicker{color:#ffb17a}.amv-training-page .pt-intro h2{color:#fff;text-wrap:balance}.amv-training-page .pt-intro>div:last-child{padding:8px 0 0 5px;border-left:1px solid rgba(255,255,255,.2);padding-left:clamp(24px,4vw,48px)}
.amv-training-page .pt-intro p:not(.section-kicker){color:#e8f2f8;font-size:1.05rem;line-height:1.75}.amv-training-page .pt-intro p:last-child{margin-bottom:0}
.amv-training-page .amv-practice-evidence{padding-top:clamp(62px,7vw,88px);background:linear-gradient(180deg,#dcecf6 0%,#edf5f9 32%,#f8fbfd 100%);border-top:1px solid #c6dce9}
.amv-training-page .amv-practice-heading{position:relative;padding:clamp(28px,4vw,44px);overflow:hidden;border:1px solid #c9dce8;border-top:4px solid #f36b17;border-radius:25px;background:linear-gradient(120deg,#fff 0%,#f8fbfd 62%,#e3f0f7 100%);box-shadow:0 17px 40px rgba(8,49,84,.1)}
.amv-training-page .amv-practice-heading::after{content:'';position:absolute;right:-48px;top:-62px;width:175px;height:175px;border-radius:50%;background:radial-gradient(circle,rgba(243,107,23,.14),rgba(243,107,23,0) 68%);pointer-events:none}.amv-training-page .amv-practice-heading .section-kicker{color:#d94e00}.amv-training-page .amv-practice-heading h2{color:#0a3158;text-wrap:balance}.amv-training-page .amv-practice-heading>p:last-child{color:#385a76;font-weight:520}.amv-training-page .amv-practice-heading strong{color:#0a3158}
@media(max-width:900px){.amv-training-page .pt-intro>div:last-child{padding:22px 0 0;border-top:1px solid rgba(255,255,255,.2);border-left:0}}
@media(max-width:620px){.amv-training-page .pt-intro{width:calc(100% - 28px);margin-block:14px 28px;padding:30px 22px;border-radius:23px}.amv-training-page .pt-intro p:not(.section-kicker){font-size:.96rem}.amv-training-page .amv-practice-evidence{padding-top:42px}.amv-training-page .amv-practice-heading{padding:25px 20px;border-radius:21px}}

/* AMV: fotogalerij trainingslocatie */
.amv-training-page .amv-location-gallery{width:100%;max-width:none;padding-inline:max(22px,calc((100% - 1180px)/2));background:linear-gradient(145deg,#082d53 0%,#174f7c 55%,#2679aa 100%);color:#fff}.amv-training-page .amv-location-heading{display:grid;grid-template-columns:minmax(0,.95fr) minmax(300px,.75fr);gap:clamp(32px,7vw,90px);align-items:end;margin-bottom:32px}.amv-training-page .amv-location-heading .section-kicker{color:#ffb17a}.amv-training-page .amv-location-heading h2{margin-bottom:0;color:#fff;text-wrap:balance}.amv-training-page .amv-location-heading>p{margin:0 0 5px;color:#e5f0f7;font-size:1.03rem;line-height:1.72}
.amv-training-page .amv-location-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:230px;gap:13px}.amv-training-page .amv-location-photo{position:relative;overflow:hidden;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#061f39;box-shadow:0 14px 32px rgba(0,20,39,.25);cursor:zoom-in}.amv-training-page .amv-location-photo-wide{grid-column:span 2}.amv-training-page .amv-location-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease,filter .4s ease}.amv-training-page .amv-location-photo::after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(3,22,40,.88));pointer-events:none}.amv-training-page .amv-location-photo span{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:#fff;font-size:.9rem;font-weight:850;text-align:left}.amv-training-page .amv-location-photo:hover img,.amv-training-page .amv-location-photo:focus-visible img{transform:scale(1.055);filter:saturate(1.08) brightness(1.04)}.amv-training-page .amv-location-photo:focus-visible{outline:3px solid #ff8a3d;outline-offset:3px}.amv-training-page .amv-location-hint{margin:17px 0 0;color:#cfdfeb;font-size:.85rem;text-align:center}
.amv-location-dialog{width:min(94vw,1200px);max-height:94vh;padding:0;overflow:auto;border:1px solid rgba(255,255,255,.2);border-radius:23px;background:#071f39;box-shadow:0 35px 95px rgba(0,0,0,.55);color:#fff}.amv-location-dialog::backdrop{background:rgba(2,15,29,.86);backdrop-filter:blur(6px)}.amv-location-dialog-bar{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 15px 12px 22px;background:rgba(7,31,57,.96)}.amv-location-dialog-bar strong{color:#fff}.amv-location-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#f36b17;color:#fff;font-size:1.55rem;cursor:pointer}.amv-location-dialog>img{display:block;width:100%;max-height:76vh;object-fit:contain;background:#041525}.amv-location-dialog>p{margin:0;padding:15px 22px;color:#e5f0f7;line-height:1.5}
@media(max-width:900px){.amv-training-page .amv-location-heading{grid-template-columns:1fr;gap:12px;align-items:start}.amv-training-page .amv-location-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}}
@media(max-width:620px){.amv-training-page .amv-location-gallery{padding-inline:14px}.amv-training-page .amv-location-grid{grid-auto-rows:175px;gap:9px}.amv-training-page .amv-location-photo,.amv-training-page .amv-location-dialog{border-radius:15px}.amv-training-page .amv-location-photo span{left:12px;right:12px;bottom:11px;font-size:.78rem}.amv-location-dialog{width:97vw;max-height:95vh}.amv-location-dialog>p{padding:13px 16px;font-size:.87rem}}
@media(prefers-reduced-motion:reduce){.amv-training-page .amv-location-photo img{transition:none}.amv-training-page .amv-location-photo:hover img{transform:none}}

/* Homepage: rustige trainingsagenda en handmatige trainingsslider */
.home-training-agenda{width:min(calc(100% - 44px),1280px);margin-inline:auto;padding:clamp(58px,8vw,105px) 0}.home-training-intro{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,7vw,90px);align-items:end;margin-bottom:30px}.home-training-intro .section-kicker{margin:0 0 9px}.home-training-intro h2{max-width:920px;margin:0;color:#0b3158;font-size:clamp(2.3rem,4.3vw,4.3rem);line-height:1.03;letter-spacing:-.04em;text-wrap:balance}
.next-training-card{position:relative;display:grid;grid-template-columns:130px minmax(0,1fr) minmax(225px,.42fr);gap:clamp(25px,4vw,50px);align-items:center;padding:clamp(27px,4vw,46px);overflow:hidden;border:1px solid rgba(255,132,48,.62);border-radius:27px;background:radial-gradient(circle at 91% 7%,rgba(255,144,67,.22),transparent 25%),linear-gradient(135deg,#082d53 0%,#164f7d 58%,#2577a8 100%);box-shadow:0 24px 58px rgba(7,50,87,.2)}.next-training-card::after{content:'';position:absolute;right:-68px;bottom:-100px;width:250px;height:250px;border:1px solid rgba(255,255,255,.09);border-radius:50%;pointer-events:none}.next-training-date{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:122px;height:144px;border:1px solid rgba(255,255,255,.25);border-radius:21px;background:rgba(255,255,255,.1);box-shadow:inset 0 1px rgba(255,255,255,.15)}.next-training-date span{color:#fff;font-size:3.65rem;font-weight:950;line-height:.85}.next-training-date strong{margin-top:8px;color:#ff9b5a;font-size:1.08rem;letter-spacing:.12em;text-transform:uppercase}.next-training-date small{margin-top:5px;color:#cfe0ec;font-weight:800}.next-training-copy{position:relative;z-index:1}.next-training-label{margin:0 0 8px;color:#ffad75;font-size:.75rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.next-training-copy h3{max-width:720px;margin:0 0 12px;color:#fff;font-size:clamp(1.9rem,3vw,3.15rem);line-height:1.04;letter-spacing:-.025em}.next-training-copy h3 span{color:#ff9a58}.next-training-copy>p:not(.next-training-label){max-width:730px;margin:0;color:#e3eef6;line-height:1.65}.next-training-copy ul{display:flex;flex-wrap:wrap;gap:8px 20px;margin:18px 0 0;padding:0;list-style:none}.next-training-copy li{position:relative;padding-left:16px;color:#fff;font-size:.88rem;font-weight:780}.next-training-copy li::before{content:'•';position:absolute;left:0;color:#ff7a27}.next-training-action{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:13px}.next-training-action>span{color:#e8f2f8;font-size:.83rem;font-weight:800;text-align:center}.next-training-action>span::before{content:'';display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#ff741d;box-shadow:0 0 0 5px rgba(255,116,29,.15)}.next-training-action .button{text-align:center}
.training-preview-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:44px 0 18px}.training-preview-heading .section-kicker{margin:0 0 5px}.training-preview-heading h3{margin:0;color:#0b3158;font-size:clamp(1.55rem,2.5vw,2.3rem)}.training-slider-controls{display:flex;gap:8px}.training-slider-controls button{display:grid;place-items:center;width:43px;height:43px;border:1px solid #cbdbe7;border-radius:50%;background:#fff;color:#0b3158;font-size:1.15rem;font-weight:900;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.training-slider-controls button:hover,.training-slider-controls button:focus-visible{transform:translateY(-2px);border-color:#f36b17;background:#f36b17;color:#fff}
.training-preview-slider{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(275px,31.5%);gap:14px;overflow-x:auto;padding:2px 2px 18px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#b7cddd transparent}.training-preview-slider article{position:relative;display:flex;flex-direction:column;min-height:220px;padding:25px;border:1px solid #d4e1eb;border-radius:20px;background:#fff;box-shadow:0 12px 28px rgba(7,51,87,.07);scroll-snap-align:start;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.training-preview-slider article:hover,.training-preview-slider article:focus-within{transform:translateY(-5px);border-color:rgba(243,107,23,.65);box-shadow:0 19px 36px rgba(7,51,87,.13)}.training-preview-slider article>p{margin:0 0 9px;color:#f36b17;font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.training-preview-slider h4{margin:0 0 10px;color:#0b3158;font-size:1.24rem;line-height:1.18}.training-preview-slider article>span{color:#587187;font-size:.91rem;line-height:1.55}.training-preview-slider a{margin-top:auto;padding-top:20px;color:#0b5790;font-weight:850;text-decoration:none}.training-preview-slider a b{margin-left:5px;color:#f36b17}.training-preview-slider a::after{content:'';position:absolute;inset:0}
@media(max-width:900px){.home-training-intro{grid-template-columns:1fr;gap:8px}.next-training-card{grid-template-columns:105px minmax(0,1fr)}.next-training-date{width:102px;height:124px}.next-training-action{grid-column:1/-1;align-items:flex-start;flex-direction:row;justify-content:space-between}.training-preview-slider{grid-auto-columns:minmax(285px,48%)}}
@media(max-width:620px){.home-training-agenda{width:calc(100% - 28px);padding-block:48px}.next-training-card{grid-template-columns:78px minmax(0,1fr);gap:18px;padding:23px 19px;border-radius:22px}.next-training-date{width:76px;height:98px;border-radius:16px}.next-training-date span{font-size:2.65rem}.next-training-date strong{font-size:.8rem}.next-training-date small{font-size:.72rem}.next-training-copy h3{font-size:1.65rem}.next-training-copy>p:not(.next-training-label),.next-training-copy ul{grid-column:1/-1}.next-training-copy ul{gap:7px 14px}.next-training-action{align-items:stretch;flex-direction:column}.next-training-action>span{text-align:left}.training-preview-heading{align-items:center;margin-top:34px}.training-preview-heading h3{font-size:1.4rem}.training-slider-controls button{width:39px;height:39px}.training-preview-slider{grid-auto-columns:86%;gap:11px}.training-preview-slider article{min-height:205px;padding:22px}}
@media(prefers-reduced-motion:reduce){.training-preview-slider{scroll-behavior:auto}.training-preview-slider article,.training-slider-controls button{transition:none}.training-preview-slider article:hover,.training-slider-controls button:hover{transform:none}}

/* Homepage agenda: eerstvolgende training benut de lege ruimte naast de kop */
.training-agenda-top{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(560px,1.38fr);gap:clamp(28px,5vw,72px);align-items:center}.training-agenda-top .home-training-intro{display:block;margin:0}.training-agenda-top .home-training-intro h2{font-size:clamp(2.45rem,3.7vw,3.85rem)}
.training-agenda-top .next-training-card{grid-template-columns:88px minmax(0,1fr);gap:22px;padding:25px 28px;border-radius:23px}.training-agenda-top .next-training-date{width:84px;height:108px;border-radius:17px}.training-agenda-top .next-training-date span{font-size:2.8rem}.training-agenda-top .next-training-date strong{margin-top:6px;font-size:.8rem}.training-agenda-top .next-training-date small{font-size:.72rem}.training-agenda-top .next-training-copy h3{margin-bottom:8px;font-size:clamp(1.55rem,2.1vw,2.25rem)}.training-agenda-top .next-training-copy>p:not(.next-training-label){font-size:.91rem;line-height:1.5}.training-agenda-top .next-training-copy ul{gap:6px 15px;margin-top:12px}.training-agenda-top .next-training-copy li{font-size:.78rem}.training-agenda-top .next-training-action{grid-column:2;display:grid;grid-template-columns:auto minmax(210px,max-content);align-items:center;gap:14px}.training-agenda-top .next-training-action>span{text-align:left}.training-agenda-top .next-training-action .button{padding:13px 18px;font-size:.79rem}.home-training-agenda .training-preview-heading{margin-top:38px}
@media(max-width:1050px){.training-agenda-top{grid-template-columns:minmax(250px,.7fr) minmax(460px,1.3fr);gap:28px}.training-agenda-top .next-training-action{grid-template-columns:1fr}.training-agenda-top .next-training-action>span{display:none}}
@media(max-width:820px){.training-agenda-top{grid-template-columns:1fr;gap:24px}.training-agenda-top .home-training-intro{max-width:720px}.training-agenda-top .next-training-card{grid-template-columns:88px minmax(0,1fr)}.training-agenda-top .next-training-action{grid-column:2;display:flex;align-items:flex-start}.training-agenda-top .next-training-action>span{display:block}}
@media(max-width:620px){.training-agenda-top .next-training-card{grid-template-columns:72px minmax(0,1fr);gap:16px;padding:21px 17px}.training-agenda-top .next-training-date{width:70px;height:92px}.training-agenda-top .next-training-date span{font-size:2.35rem}.training-agenda-top .next-training-copy h3{font-size:1.5rem}.training-agenda-top .next-training-action{grid-column:1/-1;align-items:stretch}.training-agenda-top .next-training-action>span{display:block}.home-training-agenda .training-preview-heading{margin-top:31px}}
.training-section-heading {
  display: block;
  max-width: 860px;
  margin: 0;
  padding-left: clamp(20px, 3vw, 46px);
  border-left: 5px solid #ff6b16;
}

.training-section-heading strong {
  display: block;
  margin: 5px 0 12px;
  color: #0b345f;
  font-size: clamp(2rem, 4vw, 3.8rem);
  line-height: 1.03;
  letter-spacing: -0.04em;
}

.training-section-heading > p:last-child {
  max-width: 760px;
  margin: 0;
  color: #526c88;
  font-size: clamp(1rem, 1.4vw, 1.2rem);
  line-height: 1.65;
}

.training-offer-disclosure > summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: clamp(24px, 4vw, 46px);
  border: 1px solid #d3e1ed;
  border-radius: 24px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 18px 48px rgba(13, 52, 89, .09);
  cursor: pointer;
  list-style: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.training-offer-disclosure > summary::-webkit-details-marker { display: none; }

.training-offer-disclosure > summary:hover,
.training-offer-disclosure > summary:focus-visible {
  border-color: rgba(255,107,22,.65);
  box-shadow: 0 20px 52px rgba(13, 52, 89, .12), 0 0 0 4px rgba(255,107,22,.07);
  transform: translateY(-2px);
  outline: none;
}

.training-offer-disclosure .training-section-heading > span:last-child {
  display: block;
  max-width: 760px;
  color: #526c88;
  font-size: clamp(1rem, 1.4vw, 1.2rem);
  line-height: 1.65;
}

.training-offer-toggle {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  color: #fff;
  background: #ff6b16;
  box-shadow: 0 0 0 9px rgba(255,107,22,.1);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  transition: transform .25s ease, background .2s ease;
}

.training-offer-disclosure[open] .training-offer-toggle {
  transform: rotate(45deg);
  background: #1672a8;
}

.training-offer-content {
  padding-top: 34px;
}

@media (max-width: 680px) {
  .training-section-heading {
    margin-bottom: 24px;
    padding-left: 18px;
  }

  .training-offer-disclosure > summary {
    align-items: flex-start;
    padding: 22px 18px;
    border-radius: 18px;
  }

  .training-offer-toggle {
    width: 44px;
    height: 44px;
    font-size: 1.7rem;
  }
}

/* Herstelde kleurverdeling voor de twee uitgelichte trainingen. */
.featured-training-grid article:first-child {
  border-color: #ff8a45;
  background: linear-gradient(135deg, #0a315a 0%, #174f7c 55%, #2677a8 100%);
  box-shadow: 0 22px 48px rgba(8, 62, 105, .22);
}

.featured-training-grid article:first-child :is(h3, p:not(.section-kicker)) {
  color: #fff;
}

.featured-training-grid article:first-child .section-kicker {
  color: #ffb27d;
}

.featured-training-grid article:first-child .featured-training-check {
  color: #fff;
  background: #ff6b16;
  box-shadow: 0 0 0 8px rgba(255, 107, 22, .13);
}

.featured-training-grid article:first-child:hover,
.featured-training-grid article:first-child:focus-within {
  border-color: #ff6b16;
  background: linear-gradient(135deg, #082b50 0%, #155783 50%, #2c8cc1 100%);
}

.featured-training-grid article:first-child:hover .featured-training-check,
.featured-training-grid article:first-child:focus-within .featured-training-check {
  background: #ff7b25;
  box-shadow: 0 0 0 10px rgba(255, 123, 37, .17), 0 0 28px rgba(255, 107, 22, .32);
}

/* Rustige, goed leesbare kop voor het uitklapbare trainingsaanbod. */
.training-offer-disclosure > summary,
.training-offer-disclosure[open] > summary,
.training-offer-disclosure > summary:hover,
.training-offer-disclosure > summary:focus-visible {
  color: #0b345f;
  background: #ffffff;
}

.training-offer-disclosure > summary .section-kicker,
.training-offer-disclosure[open] > summary .section-kicker,
.training-offer-disclosure > summary:hover .section-kicker {
  color: #f56718 !important;
}

.training-offer-disclosure > summary .training-section-heading strong,
.training-offer-disclosure[open] > summary .training-section-heading strong,
.training-offer-disclosure > summary:hover .training-section-heading strong {
  color: #0b345f !important;
}

.training-offer-disclosure > summary .training-section-heading > span:last-child,
.training-offer-disclosure[open] > summary .training-section-heading > span:last-child,
.training-offer-disclosure > summary:hover .training-section-heading > span:last-child {
  color: #526c88 !important;
}

/* Subtiele StraatVaardig-gloed en een duidelijk bedieningsicoon. */
.training-offer-disclosure > summary,
.training-offer-disclosure[open] > summary {
  border: 1px solid rgba(26, 107, 158, .22);
  background:
    radial-gradient(circle at 96% 50%, rgba(255, 107, 22, .11), transparent 12%),
    linear-gradient(112deg, #ffffff 0%, #f7fbfe 58%, #edf7fc 100%);
  box-shadow:
    inset 5px 0 0 #ff6b16,
    0 16px 38px rgba(13, 52, 89, .10),
    0 0 32px rgba(35, 131, 181, .07);
}

.training-offer-disclosure > summary:hover,
.training-offer-disclosure > summary:focus-visible {
  border-color: rgba(255, 107, 22, .55);
  background:
    radial-gradient(circle at 94% 50%, rgba(255, 107, 22, .18), transparent 16%),
    linear-gradient(112deg, #ffffff 0%, #f2f9fd 52%, #e3f3fb 100%);
  box-shadow:
    inset 5px 0 0 #ff6b16,
    0 20px 46px rgba(11, 67, 105, .16),
    0 0 0 4px rgba(255, 107, 22, .07),
    0 0 38px rgba(29, 133, 184, .13);
}

.training-offer-disclosure .training-offer-toggle,
.training-offer-disclosure[open] .training-offer-toggle {
  position: relative;
  z-index: 2;
  margin-right: 4px;
  color: #ffffff !important;
  background: #ff6b16 !important;
  border: 2px solid rgba(255, 255, 255, .92);
  opacity: 1 !important;
  box-shadow:
    0 0 0 8px rgba(255, 107, 22, .12),
    0 9px 24px rgba(255, 107, 22, .24);
}

.training-offer-disclosure > summary:hover .training-offer-toggle,
.training-offer-disclosure > summary:focus-visible .training-offer-toggle {
  transform: scale(1.08);
  background: #ff7b25 !important;
  box-shadow:
    0 0 0 10px rgba(255, 107, 22, .14),
    0 10px 28px rgba(255, 107, 22, .34);
}

.training-offer-disclosure[open] > summary:hover .training-offer-toggle,
.training-offer-disclosure[open] > summary:focus-visible .training-offer-toggle {
  transform: rotate(45deg) scale(1.08);
}

/* Dit plusje blijft helder; algemene animatieregels mogen het niet vervagen. */
.training-offer-disclosure.sv-readable-hover > summary .training-offer-toggle.sv-hover-dot.sv-dot-text,
.training-offer-disclosure.sv-readable-hover[open] > summary .training-offer-toggle.sv-hover-dot.sv-dot-text {
  z-index: 6 !important;
  color: #ffffff !important;
  background: #ff6b16 !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  transform: scale(1) !important;
  pointer-events: auto !important;
}

.training-offer-disclosure.sv-readable-hover > summary:hover .training-offer-toggle.sv-hover-dot.sv-dot-text,
.training-offer-disclosure.sv-readable-hover > summary:focus-visible .training-offer-toggle.sv-hover-dot.sv-dot-text {
  background: #ff7b25 !important;
  transform: scale(1.08) !important;
}

.training-offer-disclosure.sv-readable-hover[open] > summary .training-offer-toggle.sv-hover-dot.sv-dot-text {
  transform: rotate(45deg) !important;
}

.training-offer-disclosure.sv-readable-hover[open] > summary:hover .training-offer-toggle.sv-hover-dot.sv-dot-text,
.training-offer-disclosure.sv-readable-hover[open] > summary:focus-visible .training-offer-toggle.sv-hover-dot.sv-dot-text {
  transform: rotate(45deg) scale(1.08) !important;
}

/* Professionele kaartinteractie: blauw, witte tekst en een subtiele oranje gloed. */
.training-offer-content .featured-training-grid article,
.training-offer-content .training-list details {
  isolation: isolate;
  transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.training-offer-content .featured-training-grid article:hover,
.training-offer-content .featured-training-grid article:focus-within,
.training-offer-content .training-list details:hover,
.training-offer-content .training-list details:focus-within,
.training-offer-content .training-list details[open] {
  border-color: rgba(255, 107, 22, .72) !important;
  background:
    radial-gradient(circle at 9% 18%, rgba(255, 107, 22, .24), transparent 30%),
    linear-gradient(135deg, #0a315a 0%, #174f7c 56%, #2677a8 100%) !important;
  box-shadow:
    0 20px 46px rgba(8, 58, 99, .23),
    0 0 0 1px rgba(255, 107, 22, .12),
    0 0 28px rgba(255, 107, 22, .10) !important;
}

.training-offer-content .featured-training-grid article:hover :is(h3, p, a),
.training-offer-content .featured-training-grid article:focus-within :is(h3, p, a),
.training-offer-content .training-list details:hover :is(summary, strong, p, a),
.training-offer-content .training-list details:focus-within :is(summary, strong, p, a),
.training-offer-content .training-list details[open] :is(summary, strong, p, a) {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.training-offer-content .featured-training-grid article:hover .section-kicker,
.training-offer-content .featured-training-grid article:focus-within .section-kicker {
  color: #ffc39b !important;
}

.training-offer-content .featured-training-check,
.training-offer-content .featured-training-grid article .featured-training-check.sv-hover-dot {
  position: relative;
  z-index: 4 !important;
  color: #ffffff !important;
  background: #ff6b16 !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  transform: scale(1) !important;
  box-shadow: 0 0 0 7px rgba(255, 107, 22, .13), 0 8px 22px rgba(255, 107, 22, .20) !important;
}

.training-offer-content .featured-training-grid article:hover .featured-training-check,
.training-offer-content .featured-training-grid article:focus-within .featured-training-check {
  transform: scale(1.12) rotate(-6deg) !important;
  background: #ff7b25 !important;
  box-shadow: 0 0 0 9px rgba(255, 255, 255, .10), 0 0 27px rgba(255, 107, 22, .45) !important;
}

.training-offer-content .training-list details:hover summary::after,
.training-offer-content .training-list details:focus-within summary::after,
.training-offer-content .training-list details[open] summary::after {
  color: #ff8a3d !important;
  text-shadow: 0 0 18px rgba(255, 107, 22, .62) !important;
}

/* Compact en professioneel contactblok op de homepage. */
.contact.contact-with-form {
  scroll-margin-top: 118px;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  align-items: center;
  gap: clamp(2rem, 5vw, 4.5rem);
  padding-block: clamp(42px, 5vw, 68px);
  background:
    radial-gradient(circle at 78% 20%, rgba(40, 130, 182, .25), transparent 28%),
    radial-gradient(circle at 10% 85%, rgba(255, 107, 22, .11), transparent 26%),
    linear-gradient(125deg, #071f3d 0%, #0b3158 56%, #154f78 100%);
}

.contact-with-form .contact-copy {
  width: min(100%, 620px);
  justify-self: end;
}

.contact-with-form .contact-copy h2 {
  max-width: 620px;
  margin-bottom: .9rem;
  font-size: clamp(2.2rem, 4vw, 4rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.contact-with-form .contact-lead {
  max-width: 56ch;
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: clamp(1rem, 1.25vw, 1.15rem);
  line-height: 1.65;
}

.contact-options {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin: 1.45rem 0 1.6rem;
}

.contact-options span {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-height: 42px;
  padding: .55rem .85rem;
  border: 1px solid rgba(255, 255, 255, .17);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-size: .9rem;
  font-weight: 750;
}

.contact-options b {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #ff6b16;
  color: #fff;
  font-size: .82rem;
  box-shadow: 0 0 0 5px rgba(255, 107, 22, .12);
}

.contact-with-form .contact-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .35rem;
}

.contact-mail-label {
  color: rgba(255, 255, 255, .64);
  font-size: .78rem;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.contact-mail-link {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  color: #fff;
  font-size: clamp(1rem, 1.35vw, 1.18rem);
  font-weight: 850;
  text-decoration: none;
}

.contact-mail-link span {
  color: #ff7b25;
  font-size: 1.35em;
  transition: transform .2s ease;
}

.contact-mail-link:hover span,
.contact-mail-link:focus-visible span {
  transform: translateX(5px);
}

.contact-with-form .secure-contact-form {
  justify-self: start;
  width: min(100%, 680px);
  padding: clamp(1.2rem, 2vw, 1.65rem);
  border-color: rgba(255, 255, 255, .4);
  border-radius: 22px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 24px 58px rgba(2, 23, 46, .28);
}

.contact-with-form .secure-contact-form label,
.contact-with-form .privacy-check {
  margin-bottom: .72rem;
}

.contact-with-form .secure-contact-form :is(input, select, textarea) {
  padding: .72rem .85rem;
}

.contact-with-form .secure-contact-form textarea {
  min-height: 108px;
  resize: vertical;
}

.contact-with-form .captcha-slot {
  margin: .7rem 0;
}

@media (max-width: 980px) {
  .contact.contact-with-form {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .contact-with-form .contact-copy,
  .contact-with-form .secure-contact-form {
    width: min(100%, 720px);
    justify-self: center;
  }
}

@media (max-width: 600px) {
  .contact.contact-with-form {
    padding-inline: 18px;
    padding-block: 38px;
  }

  .contact-with-form .contact-copy h2 {
    font-size: clamp(2.25rem, 12vw, 3.2rem);
  }

  .contact-options {
    display: grid;
  }

  .contact-options span {
    width: 100%;
  }

  .contact-with-form .secure-contact-form {
    padding: 1rem;
    border-radius: 18px;
  }
}

/* De witte informatieknop behoudt altijd voldoende contrast in blauwe kaarten. */
.training-offer-content .featured-training-grid article .button.secondary,
.training-offer-content .featured-training-grid article:hover .button.secondary,
.training-offer-content .featured-training-grid article:focus-within .button.secondary,
.training-offer-content .featured-training-grid article.sv-readable-hover:hover .button.secondary {
  border-color: #ff6b16 !important;
  background: #ffffff !important;
  color: #0b3158 !important;
  opacity: 1 !important;
  text-shadow: none !important;
  box-shadow: 0 8px 20px rgba(3, 27, 50, .14) !important;
}

.training-offer-content .featured-training-grid article .button.secondary:hover,
.training-offer-content .featured-training-grid article .button.secondary:focus-visible,
.training-offer-content .featured-training-grid article:hover .button.secondary:hover,
.training-offer-content .featured-training-grid article:focus-within .button.secondary:focus-visible {
  border-color: #ff7b25 !important;
  background: #ff6b16 !important;
  color: #ffffff !important;
  box-shadow: 0 10px 25px rgba(255, 107, 22, .30) !important;
}
/* Blogs: volledige woorden in koppen en een rustige, responsieve titelschaal. */
.blog-page :is(h1, h2, h3),
.blog-page :is(h1, h2, h3) * {
  -webkit-hyphens: none !important;
  hyphens: none !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
}

.blog-page .article-hero h1 {
  max-width: 22ch;
  font-size: clamp(2.35rem, 5.25vw, 5.35rem);
  line-height: 1.01;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.blog-page :is(.article-card, .section-intro, .article-section) h2 {
  font-size: clamp(1.65rem, 3vw, 3rem);
  line-height: 1.08;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.blog-page :is(.program-step, .content-card, .keyword-card, .data-card) :is(h2, h3, strong) {
  font-size: clamp(1.12rem, 1.8vw, 1.55rem);
  line-height: 1.16;
  letter-spacing: -.015em;
  text-wrap: pretty;
}

.blog-page [data-percent-counter] {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .blog-page .article-hero h1 {
    max-width: 100%;
    font-size: clamp(2rem, 10.3vw, 3.15rem);
    line-height: 1.04;
    letter-spacing: -.035em;
  }

  .blog-page :is(.article-card, .section-intro, .article-section) h2 {
    font-size: clamp(1.5rem, 7.1vw, 2.15rem);
    line-height: 1.1;
  }
}

@media (max-width: 390px) {
  .blog-page .article-hero h1 {
    font-size: clamp(1.82rem, 9.7vw, 2.45rem);
  }
}
