.elementor-7452 .elementor-element.elementor-element-7b4168e{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7452 .elementor-element.elementor-element-1080d68{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7452 .elementor-element.elementor-element-9cd8dbd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7452 .elementor-element.elementor-element-67b121c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7452 .elementor-element.elementor-element-046ccad{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7452 .elementor-element.elementor-element-f62a54d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7452 .elementor-element.elementor-element-9feb703{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7452 .elementor-element.elementor-element-9fc24a0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-ce7ea5a *//* =========================================================
   BVA x AVANS — IVK STUDENTENGIDS HERO
   ========================================================= */

.ivk-hero,
.ivk-hero * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}


/* =========================================================
   HERO BASIS
   ========================================================= */

.ivk-hero {
  position: relative;

  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 0 !important;

  overflow: hidden;

  color: #ffffff;

  background:
    radial-gradient(
      circle at 78% 26%,
      rgba(6, 175, 204, 0.14) 0%,
      rgba(6, 175, 204, 0.04) 26%,
      transparent 47%
    ),
    linear-gradient(
      135deg,
      #051D3D 0%,
      #06294f 56%,
      #051D3D 100%
    );
}


/* =========================================================
   DECORATIEVE ACHTERGROND
   ========================================================= */

.ivk-hero-decoration {
  position: absolute;

  pointer-events: none;

  border-radius: 50%;
}

.ivk-decoration-one {
  width: 480px;
  height: 480px;

  right: -170px;
  top: -220px;

  border: 1px solid rgba(6, 175, 204, 0.14);
}

.ivk-decoration-one::after {
  content: "";

  position: absolute;

  inset: 62px;

  border-radius: 50%;

  border: 1px solid rgba(6, 175, 204, 0.09);
}

.ivk-decoration-two {
  width: 260px;
  height: 260px;

  left: -130px;
  bottom: 60px;

  background: rgba(6, 175, 204, 0.025);
}


/* =========================================================
   MAIN CONTAINER
   ========================================================= */

.ivk-hero-inner {
  position: relative;
  z-index: 3;

  width: 100%;
  max-width: 1180px;

  min-height: 580px;

  margin: 0 auto;

  padding:
    72px
    24px
    84px;

  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(390px, 0.92fr);

  gap: 76px;

  align-items: center;
}


/* =========================================================
   LINKERKANT
   ========================================================= */

.ivk-hero-content {
  max-width: 690px;
}


/* Kleine titel */

.ivk-eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 10px;

  margin-bottom: 20px;

  font-size: 12px;
  line-height: 1.4;

  font-weight: 800;

  letter-spacing: 0.13em;

  color: rgba(255, 255, 255, 0.82);
}

.ivk-eyebrow-dot {
  width: 9px;
  height: 9px;

  flex: 0 0 9px;

  border-radius: 50%;

  background: #06AFCC;

  box-shadow:
    0 0 0 5px rgba(6, 175, 204, 0.11);
}


/* =========================================================
   H1
   Alleen IVK krijgt accentkleur
   ========================================================= */

.ivk-hero-content h1 {
  max-width: 700px;

  margin: 0 0 24px;

  font-size: clamp(48px, 5.25vw, 70px);
  line-height: 1.04;

  font-weight: 800;

  letter-spacing: -0.025em;

  color: #ffffff;
}

.ivk-hero-content h1 span {
  color: #06AFCC;
}


/* =========================================================
   INTRO
   ========================================================= */

.ivk-hero-intro {
  max-width: 670px;

  margin: 0 0 26px;

  font-size: 16.5px;
  line-height: 1.75;

  font-weight: 450;

  color: rgba(255, 255, 255, 0.88);
}


/* =========================================================
   ONDERWERP TAGS
   ========================================================= */

.ivk-topic-tags {
  display: flex;
  flex-wrap: wrap;

  gap: 9px;

  margin-bottom: 30px;
}

.ivk-topic-tags span {
  min-height: 33px;

  display: inline-flex;
  align-items: center;

  padding: 0 14px;

  border:
    1px solid
    rgba(255, 255, 255, 0.18);

  border-radius: 999px;

  background:
    rgba(255, 255, 255, 0.055);

  color:
    rgba(255, 255, 255, 0.91);

  font-size: 12.5px;
  line-height: 1;

  font-weight: 650;

  backdrop-filter: blur(5px);

  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    transform 0.2s ease;
}

.ivk-topic-tags span:hover {
  transform: translateY(-2px);

  border-color:
    rgba(6, 175, 204, 0.7);

  background:
    rgba(6, 175, 204, 0.09);
}


/* =========================================================
   CTA
   ========================================================= */

.ivk-main-button {
  min-height: 52px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 12px;

  padding: 0 27px;

  border: 2px solid #06AFCC;

  border-radius: 999px;

  background: #06AFCC;

  color: #ffffff !important;

  font-size: 14.5px;
  line-height: 1;

  font-weight: 800;

  text-decoration: none !important;

  box-shadow:
    0 14px 30px
    rgba(6, 175, 204, 0.20);

  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.ivk-main-button:hover {
  transform: translateY(-2px);

  background: #079db7;

  border-color: #079db7;

  box-shadow:
    0 18px 38px
    rgba(6, 175, 204, 0.30);
}

.ivk-button-arrow {
  font-size: 18px;
  line-height: 1;

  transition:
    transform 0.2s ease;
}

.ivk-main-button:hover .ivk-button-arrow {
  transform: translateY(3px);
}


/* =========================================================
   RECHTERKANT
   ========================================================= */

.ivk-hero-visual {
  position: relative;

  min-height: 410px;
}


/* =========================================================
   GROTE KAART
   ========================================================= */

.ivk-guide-card {
  position: absolute;

  width: 350px;

  right: 26px;
  top: 58px;

  padding:
    31px
    31px
    27px;

  border-radius: 24px;

  background: #ffffff;

  color: #051D3D;

  box-shadow:
    0 30px 70px
    rgba(0, 0, 0, 0.23);

  transform: rotate(1.5deg);

  z-index: 2;
}

.ivk-guide-card::before {
  content: "";

  position: absolute;

  left: 0;
  top: 31px;

  width: 5px;
  height: 67px;

  border-radius:
    0
    999px
    999px
    0;

  background: #06AFCC;
}

.ivk-guide-label {
  margin-bottom: 13px;

  font-size: 10.5px;
  line-height: 1.4;

  font-weight: 800;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-guide-card h2 {
  margin: 0;

  font-size: 29px;
  line-height: 1.15;

  font-weight: 800;

  letter-spacing: -0.018em;

  color: #06428a;
}

.ivk-guide-line {
  width: 42px;
  height: 3px;

  margin:
    18px
    0
    17px;

  border-radius: 999px;

  background: #06AFCC;
}

.ivk-guide-card p {
  margin: 0;

  font-size: 13.5px;
  line-height: 1.65;

  color: #50627a;
}

.ivk-guide-footer {
  display: flex;
  align-items: center;

  gap: 8px;

  margin-top: 21px;
  padding-top: 16px;

  border-top:
    1px solid
    #e9eef3;

  font-size: 11px;
  line-height: 1.4;

  font-weight: 700;

  color: #06428a;
}

.ivk-guide-dot {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #06AFCC;
}


/* =========================================================
   ZWEVENDE KAARTJES
   ========================================================= */

.ivk-float-card {
  position: absolute;
  z-index: 4;

  display: flex;
  align-items: center;

  gap: 12px;

  min-width: 205px;

  padding:
    13px
    17px;

  border-radius: 15px;

  border:
    1px solid
    rgba(5, 29, 61, 0.06);

  background:
    rgba(255, 255, 255, 0.985);

  color: #051D3D;

  box-shadow:
    0 15px 38px
    rgba(0, 0, 0, 0.18);

  will-change: transform;
}


/* Kaart 01 */

.ivk-float-card-one {
  left: -10px;
  top: 16px;

  animation:
    ivkFloatOne
    5.2s
    ease-in-out
    infinite;
}


/* Kaart 02 */

.ivk-float-card-two {
  right: -4px;
  bottom: 30px;

  animation:
    ivkFloatTwo
    6.1s
    ease-in-out
    infinite;
}


/* Nummer */

.ivk-float-number {
  width: 35px;
  height: 35px;

  flex: 0 0 35px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    rgba(6, 175, 204, 0.12);

  color: #06AFCC;

  font-size: 11px;
  line-height: 1;

  font-weight: 800;
}


/* Tekst */

.ivk-float-content span {
  display: block;

  margin-bottom: 2px;

  font-size: 9.5px;
  line-height: 1.3;

  font-weight: 600;

  color: #718096;
}

.ivk-float-content strong {
  display: block;

  font-size: 12.5px;
  line-height: 1.35;

  font-weight: 800;

  color: #06428a;
}


/* =========================================================
   SUBTIELE FLOAT ANIMATIES
   ========================================================= */

@keyframes ivkFloatOne {

  0%,
  100% {
    transform:
      translateY(0)
      rotate(-2.5deg);
  }

  50% {
    transform:
      translateY(-9px)
      rotate(-1.5deg);
  }

}


@keyframes ivkFloatTwo {

  0%,
  100% {
    transform:
      translateY(0)
      rotate(2deg);
  }

  50% {
    transform:
      translateY(8px)
      rotate(1deg);
  }

}


/* =========================================================
   AVANS BADGE
   ========================================================= */

.ivk-avans-card {
  position: absolute;
  z-index: 3;

  left: 32px;
  bottom: 28px;

  min-width: 177px;

  padding:
    12px
    17px
    13px;

  border:
    1px solid
    rgba(255, 255, 255, 0.14);

  border-radius: 14px;

  background:
    rgba(255, 255, 255, 0.07);

  backdrop-filter:
    blur(8px);
}

.ivk-avans-card > span {
  display: block;

  margin-bottom: 5px;

  font-size: 9px;
  line-height: 1.3;

  font-weight: 550;

  color:
    rgba(255, 255, 255, 0.58);
}

.ivk-avans-name {
  display: flex;
  align-items: baseline;

  gap: 6px;

  font-size: 25px;
  line-height: 1;

  font-weight: 800;

  font-style: italic;

  color: #d50032;
}

.ivk-avans-name small {
  font-size: 9px;

  font-weight: 650;

  font-style: normal;

  color:
    rgba(255, 255, 255, 0.76);
}


/* =========================================================
   ONDERSTE BOODSCHAP
   ========================================================= */

.ivk-hero-message {
  position: relative;
  z-index: 3;

  border-top:
    1px solid
    rgba(255, 255, 255, 0.09);

  background:
    rgba(0, 0, 0, 0.075);
}

.ivk-hero-message-inner {
  width: 100%;
  max-width: 1180px;

  margin: 0 auto;

  padding:
    23px
    24px
    53px;

  display: flex;
  align-items: center;

  gap: 18px;
}

.ivk-quote-icon {
  width: 45px;
  height: 45px;

  flex: 0 0 45px;

  display: flex;
  align-items: center;
  justify-content: center;

  padding-top: 9px;

  border:
    1px solid
    rgba(6, 175, 204, 0.30);

  border-radius: 50%;

  font-family: Georgia, serif;

  font-size: 36px;
  line-height: 1;

  color: #06AFCC;
}

.ivk-hero-message p {
  margin: 0;

  font-size: 13.5px;
  line-height: 1.65;

  font-weight: 450;

  color:
    rgba(255, 255, 255, 0.72);
}

.ivk-hero-message strong {
  display: block;

  color: #ffffff;

  font-weight: 700;
}


/* =========================================================
   GOLF
   ========================================================= */

.ivk-hero-wave {
  position: absolute;

  left: 0;
  right: 0;
  bottom: -1px;

  z-index: 5;

  height: 40px;

  line-height: 0;

  pointer-events: none;
}

.ivk-hero-wave svg {
  display: block;

  width: 100%;
  height: 100%;
}

.ivk-hero-wave path {
  fill: #ffffff;
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

.ivk-main-button:focus-visible {
  outline:
    3px solid
    #ffffff;

  outline-offset: 4px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  .ivk-hero-inner {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(330px, 0.75fr);

    gap: 38px;

    padding-top: 60px;
  }

  .ivk-guide-card {
    width: 310px;

    right: 0;
  }

  .ivk-float-card-one {
    left: -10px;
  }

  .ivk-float-card-two {
    right: -5px;
  }

}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 768px) {

  .ivk-hero-inner {
    min-height: auto;

    grid-template-columns: 1fr;

    gap: 42px;

    padding:
      47px
      18px
      48px;
  }

  .ivk-hero-content h1 {
    font-size: 43px;
    line-height: 1.07;
  }

  .ivk-hero-intro {
    font-size: 15.5px;
    line-height: 1.68;
  }

  .ivk-main-button {
    width: 100%;
  }


  /* Visuals worden normale flow */

  .ivk-hero-visual {
    min-height: auto;

    display: flex;
    flex-direction: column;

    gap: 12px;
  }

  .ivk-guide-card,
  .ivk-float-card,
  .ivk-avans-card {
    position: relative;

    inset: auto;

    width: 100%;
  }

  .ivk-guide-card {
    order: 1;

    transform: none;

    padding:
      27px
      24px;
  }

  .ivk-float-card-one {
    order: 2;
  }

  .ivk-float-card-two {
    order: 3;
  }

  .ivk-avans-card {
    order: 4;
  }


  /* Op mobiel animatie iets subtieler */

  .ivk-float-card-one {
    animation:
      ivkMobileFloatOne
      5.2s
      ease-in-out
      infinite;
  }

  .ivk-float-card-two {
    animation:
      ivkMobileFloatTwo
      6.1s
      ease-in-out
      infinite;
  }


  .ivk-hero-message-inner {
    padding:
      21px
      18px
      50px;
  }

}


/* Mobiele animaties zonder rotatie */

@keyframes ivkMobileFloatOne {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }

}


@keyframes ivkMobileFloatTwo {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(4px);
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 480px) {

  .ivk-hero-inner {
    padding:
      40px
      17px
      43px;
  }

  .ivk-hero-content h1 {
    font-size: 37px;
  }

  .ivk-topic-tags {
    gap: 7px;
  }

  .ivk-topic-tags span {
    min-height: 31px;

    padding:
      0
      11px;

    font-size: 11.5px;
  }

  .ivk-guide-card h2 {
    font-size: 25px;
  }

  .ivk-hero-message-inner {
    align-items: flex-start;
  }

}


/* =========================================================
   MINDER BEWEGING — TOEGANKELIJKHEID
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ivk-float-card-one,
  .ivk-float-card-two {
    animation: none;
  }

}


/* =========================================================
   ELEMENTOR MARGES VERWIJDEREN
   ========================================================= */

.elementor-widget-html:has(.ivk-hero),
.elementor-widget-html:has(.ivk-hero) > .elementor-widget-container,
.elementor-section:has(.ivk-hero),
.elementor-container:has(.ivk-hero),
.e-con:has(.ivk-hero) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2f96a6c *//* =========================================================
   IVK STUDENTENGIDS — THEMA NAVIGATIE
   ========================================================= */

.ivk-topics-section,
.ivk-topics-section * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}

html {
  scroll-behavior: smooth;
}


/* =========================================================
   SECTIE
   ========================================================= */

.ivk-topics-section {
  position: relative;

  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 100px 24px 105px;

  background: #FFFFFF;

  overflow: hidden;
}

.ivk-topics-inner {
  width: 100%;
  max-width: 1140px;

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.ivk-topics-header {
  margin-bottom: 45px;
}


/* label */

.ivk-section-label {
  display: flex;
  align-items: center;

  gap: 9px;

  margin-bottom: 16px;

  font-size: 11px;
  line-height: 1.4;

  font-weight: 700;

  letter-spacing: 0.12em;

  color: #051D3D;
}

.ivk-section-dot {
  width: 8px;
  height: 8px;

  flex: 0 0 8px;

  border-radius: 50%;

  background: #06AFCC;

  box-shadow:
    0 0 0 5px rgba(6, 175, 204, 0.10);
}


/* twee kolommen */

.ivk-topics-heading-row {
  display: grid;

  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(340px, 0.75fr);

  gap: 80px;

  align-items: end;
}


/* titel */

.ivk-topics-title h2 {
  max-width: 650px;

  margin: 0;

  font-size: clamp(40px, 4.4vw, 57px);
  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -0.025em;

  color: #06428A;
}


/* intro rechts */

.ivk-topics-intro {
  max-width: 490px;

  padding-bottom: 4px;
}

.ivk-topics-intro p {
  margin: 0 0 14px;

  font-size: 15.5px;
  line-height: 1.7;

  font-weight: 400;

  color: #4B6079;
}

.ivk-topics-hint {
  display: inline-flex;
  align-items: center;

  gap: 9px;

  font-size: 12px;
  line-height: 1.5;

  font-weight: 600;

  color: #06AFCC;
}

.ivk-topics-hint span {
  font-size: 16px;

  transition:
    transform 0.2s ease;
}


/* =========================================================
   GRID — 6 ONDERWERPEN
   ========================================================= */

.ivk-topics-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 18px;
}


/* =========================================================
   KAART
   ========================================================= */

.ivk-topic-card {
  position: relative;

  min-height: 260px;

  display: flex;
  flex-direction: column;

  padding: 24px 23px 21px;

  overflow: hidden;

  border:
    1px solid
    #DDE5EB;

  border-radius: 21px;

  background: #FFFFFF;

  color: #051D3D !important;

  text-decoration: none !important;

  box-shadow:
    0 10px 30px
    rgba(5, 29, 61, 0.035);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}


/* turquoise lijn bovenaan */

.ivk-topic-card::before {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  top: 0;

  height: 4px;

  background:
    linear-gradient(
      90deg,
      #06AFCC,
      rgba(6, 175, 204, 0.18)
    );

  transform: scaleX(0);

  transform-origin: left center;

  transition:
    transform 0.3s ease;
}


/* decoratieve cirkel */

.ivk-topic-card::after {
  content: "";

  position: absolute;

  width: 115px;
  height: 115px;

  right: -58px;
  top: 66px;

  border-radius: 50%;

  border:
    1px solid
    rgba(6, 175, 204, 0.11);

  transition:
    transform 0.35s ease,
    border-color 0.35s ease;
}


/* hover */

.ivk-topic-card:hover {
  transform: translateY(-6px);

  border-color:
    rgba(6, 175, 204, 0.34);

  box-shadow:
    0 20px 45px
    rgba(5, 29, 61, 0.09);
}

.ivk-topic-card:hover::before {
  transform: scaleX(1);
}

.ivk-topic-card:hover::after {
  transform: scale(1.12);

  border-color:
    rgba(6, 175, 204, 0.20);
}


/* =========================================================
   BOVENKANT KAART
   ========================================================= */

.ivk-topic-card-top {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-bottom: 22px;
}


/* nummer */

.ivk-topic-number {
  width: 38px;
  height: 38px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    rgba(6, 175, 204, 0.10);

  color: #06AFCC;

  font-size: 11px;
  line-height: 1;

  font-weight: 700;
}


/* icoon */

.ivk-topic-icon {
  width: 45px;
  height: 45px;

  display: flex;
  align-items: center;
  justify-content: center;

  border:
    1px solid
    rgba(6, 175, 204, 0.20);

  border-radius: 13px;

  background:
    rgba(6, 175, 204, 0.055);

  color: #06AFCC;

  transition:
    transform 0.25s ease,
    background 0.25s ease;
}

.ivk-topic-icon svg {
  width: 23px;
  height: 23px;

  fill: none;

  stroke: currentColor;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-topic-card:hover
.ivk-topic-icon {
  transform:
    translateY(-3px)
    rotate(2deg);

  background:
    rgba(6, 175, 204, 0.10);
}


/* =========================================================
   TEKST
   ========================================================= */

.ivk-topic-card-content {
  position: relative;
  z-index: 2;

  flex: 1;
}

.ivk-topic-card h3 {
  margin: 0 0 10px;

  font-size: 18px;
  line-height: 1.3;

  font-weight: 700;

  letter-spacing: -0.01em;

  color: #06428A;
}

.ivk-topic-card p {
  margin: 0;

  font-size: 13px;
  line-height: 1.65;

  font-weight: 400;

  color: #53667C;
}


/* =========================================================
   LINK ONDERAAN
   ========================================================= */

.ivk-topic-link {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: center;

  gap: 8px;

  margin-top: 20px;

  font-size: 12.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06AFCC;
}

.ivk-topic-link span {
  font-size: 15px;

  transition:
    transform 0.25s ease;
}

.ivk-topic-card:hover
.ivk-topic-link span {
  transform: translateY(4px);
}


/* =========================================================
   ONDERSTE TIP
   ========================================================= */

.ivk-topics-note {
  max-width: 900px;

  margin:
    34px
    auto
    0;

  display: flex;
  align-items: center;

  gap: 15px;

  padding:
    17px
    21px;

  border:
    1px solid
    rgba(6, 175, 204, 0.17);

  border-radius: 16px;

  background:
    rgba(255, 255, 255, 0.72);
}

.ivk-topics-note-icon {
  width: 34px;
  height: 34px;

  flex: 0 0 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    rgba(6, 175, 204, 0.11);

  color: #06AFCC;

  font-size: 14px;
  font-weight: 700;
}

.ivk-topics-note p {
  margin: 0;

  font-size: 12.5px;
  line-height: 1.65;

  color: #53667C;
}


/* =========================================================
   FOCUS / TOEGANKELIJKHEID
   ========================================================= */

.ivk-topic-card:focus-visible {
  outline:
    3px solid
    rgba(6, 175, 204, 0.45);

  outline-offset: 4px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  .ivk-topics-section {
    padding:
      85px
      24px
      90px;
  }

  .ivk-topics-heading-row {
    gap: 45px;
  }

  .ivk-topics-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .ivk-topic-card {
    min-height: 255px;
  }

}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 768px) {

  .ivk-topics-section {
    padding:
      70px
      18px
      75px;
  }

  .ivk-topics-header {
    margin-bottom: 32px;
  }

  .ivk-topics-heading-row {
    grid-template-columns: 1fr;

    gap: 18px;
  }

  .ivk-topics-title h2 {
    font-size: 39px;
  }

  .ivk-topics-intro {
    max-width: 100%;
  }

  .ivk-topics-intro p {
    font-size: 14.5px;
  }

  .ivk-topics-grid {
    grid-template-columns: 1fr;

    gap: 13px;
  }


  /* kaarten compacter */

  .ivk-topic-card {
    min-height: auto;

    padding:
      20px
      19px
      18px;
  }

  .ivk-topic-card-top {
    margin-bottom: 16px;
  }

  .ivk-topic-card h3 {
    font-size: 17px;
  }

  .ivk-topic-card p {
    max-width: 92%;

    font-size: 12.5px;
  }

  .ivk-topic-link {
    margin-top: 16px;
  }

  .ivk-topics-note {
    align-items: flex-start;

    margin-top: 25px;

    padding:
      16px
      17px;
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 480px) {

  .ivk-topics-section {
    padding:
      62px
      17px
      68px;
  }

  .ivk-topics-title h2 {
    font-size: 35px;
    line-height: 1.1;
  }

}


/* =========================================================
   MINDER BEWEGING
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  html {
    scroll-behavior: auto;
  }

  .ivk-topic-card,
  .ivk-topic-card::before,
  .ivk-topic-card::after,
  .ivk-topic-icon,
  .ivk-topic-link span {
    transition: none;
  }

}


/* =========================================================
   ELEMENTOR FULL WIDTH FIX
   ========================================================= */

.elementor-widget-html:has(.ivk-topics-section),
.elementor-widget-html:has(.ivk-topics-section)
> .elementor-widget-container,
.elementor-section:has(.ivk-topics-section),
.elementor-container:has(.ivk-topics-section),
.e-con:has(.ivk-topics-section) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c229f74 *//* =========================================================
   IVK STUDENTENGIDS
   01 — ROUTE NAAR JE STAGE
   ========================================================= */

.ivk-stage,
.ivk-stage * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}


/* =========================================================
   BASIS
   ========================================================= */

.ivk-stage {
  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 82px 24px 92px;

  background: #F7FAFC;

  overflow: hidden;

  scroll-margin-top: 90px;
}

.ivk-stage-container {
  width: 100%;
  max-width: 1180px;

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.ivk-stage-header {
  display: flex;
  align-items: flex-start;

  gap: 21px;

  max-width: 960px;

  margin-bottom: 45px;
}

.ivk-stage-header-number {
  width: 56px;
  height: 56px;

  flex: 0 0 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 17px;

  background:
    linear-gradient(
      145deg,
      rgba(6, 175, 204, 0.13),
      rgba(6, 175, 204, 0.055)
    );

  box-shadow:
    0 9px 24px rgba(6, 175, 204, 0.09),
    inset 0 0 0 1px rgba(6, 175, 204, 0.07);

  color: #06AFCC;

  font-size: 15px;
  line-height: 1;

  font-weight: 700;
}

.ivk-stage-eyebrow {
  display: block;

  margin: 1px 0 5px;

  font-size: 10px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-stage-header h2 {
  margin: 0 0 9px;

  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -0.025em;

  color: #06428A;
}

.ivk-stage-header p {
  max-width: 800px;

  margin: 0;

  font-size: 15px;
  line-height: 1.72;

  font-weight: 400;

  color: #53667C;
}


/* =========================================================
   ROUTE HEADING
   ========================================================= */

.ivk-stage-route-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 24px;

  margin-bottom: 16px;
}

.ivk-stage-route-kicker {
  display: block;

  margin-bottom: 3px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-stage-route-heading h3 {
  margin: 0;

  font-size: 20px;
  line-height: 1.4;

  font-weight: 600;

  color: #051D3D;
}


/* =========================================================
   DUIDELIJKE KLIK-HINT
   Alleen dit gedeelte is aangepast
   ========================================================= */

.ivk-stage-click-hint {
  display: flex;
  align-items: center;

  gap: 10px;

  width: max-content;
  max-width: 100%;

  padding:
    10px
    13px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.075),
      rgba(6, 175, 204, 0.025)
    );

  box-shadow:
    0 7px 18px rgba(5, 29, 61, 0.035);
}

.ivk-stage-click-dot {
  width: 8px;
  height: 8px;

  flex: 0 0 8px;

  border-radius: 50%;

  background: #06AFCC;

  box-shadow:
    0 0 0 5px rgba(6, 175, 204, 0.09);

  animation:
    ivkStagePulse
    2.5s
    ease-in-out
    infinite;
}

.ivk-stage-click-copy {
  display: block;
}

.ivk-stage-click-title {
  display: block;

  margin-bottom: 1px;

  font-size: 12px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-stage-click-text {
  display: block;

  font-size: 10.5px;
  line-height: 1.45;

  font-weight: 400;

  color: #667A89;
}

@keyframes ivkStagePulse {

  0%,
  100% {
    box-shadow:
      0 0 0 4px
      rgba(6, 175, 204, 0.08);
  }

  50% {
    box-shadow:
      0 0 0 8px
      rgba(6, 175, 204, 0.025);
  }

}


/* =========================================================
   ROUTE CARD
   ========================================================= */

.ivk-stage-route-card {
  position: relative;

  overflow: hidden;

  border: 1px solid #E0E8ED;

  border-radius: 24px;

  background: #FFFFFF;

  box-shadow:
    0 22px 55px rgba(5, 29, 61, 0.07),
    0 3px 10px rgba(5, 29, 61, 0.025);
}


/* =========================================================
   VERBORGEN RADIO CONTROLS
   FIXT SCROLL-JUMP BIJ KLIKKEN
   ========================================================= */

.ivk-stage-control {
  position: fixed;

  top: 50%;
  left: 50%;

  width: 1px;
  height: 1px;

  margin: 0;
  padding: 0;

  border: 0;

  opacity: 0;

  clip: rect(0 0 0 0);
  clip-path: inset(50%);

  overflow: hidden;

  pointer-events: none;
}


/* =========================================================
   ROUTE MAP
   ========================================================= */

.ivk-stage-route-map {
  position: relative;

  min-height: 600px;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 80% 8%,
      rgba(6, 175, 204, 0.075),
      transparent 24%
    ),
    radial-gradient(
      circle at 8% 85%,
      rgba(6, 66, 138, 0.045),
      transparent 26%
    ),
    linear-gradient(
      180deg,
      #FFFFFF 0%,
      #FBFDFE 100%
    );
}


/* =========================================================
   SVG ROUTE
   ========================================================= */

.ivk-stage-road {
  position: absolute;

  inset: 25px 28px 20px;

  width: calc(100% - 56px);
  height: calc(100% - 45px);

  overflow: visible;

  filter: url(#ivkRoadShadow);

  pointer-events: none;
}

.ivk-stage-road-base {
  fill: none;

  stroke: #E7EEF2;
  stroke-width: 29;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-stage-road-line {
  fill: none;

  stroke: rgba(6, 175, 204, 0.72);
  stroke-width: 2;

  stroke-linecap: round;

  stroke-dasharray: 10 13;
}

.ivk-stage-traveller {
  fill: #06AFCC;

  stroke: #FFFFFF;
  stroke-width: 4;

  filter:
    drop-shadow(
      0 4px 5px
      rgba(6, 175, 204, 0.28)
    );
}


/* =========================================================
   DECORATIEVE ELEMENTEN
   ========================================================= */

.ivk-stage-orb {
  position: absolute;

  border-radius: 50%;

  pointer-events: none;

  filter: blur(1px);
}

.ivk-stage-orb-1 {
  width: 190px;
  height: 190px;

  right: -80px;
  top: 50px;

  border:
    1px solid
    rgba(6, 175, 204, 0.12);
}

.ivk-stage-orb-2 {
  width: 110px;
  height: 110px;

  left: 55px;
  bottom: 34px;

  background:
    rgba(6, 175, 204, 0.025);
}


/* stippen */

.ivk-stage-dots {
  position: absolute;

  width: 90px;
  height: 90px;

  opacity: 0.34;

  background-image:
    radial-gradient(
      #06AFCC 1.3px,
      transparent 1.3px
    );

  background-size: 12px 12px;

  pointer-events: none;
}

.ivk-stage-dots-1 {
  top: 35px;
  left: 35px;
}

.ivk-stage-dots-2 {
  right: 65px;
  bottom: 35px;
}


/* =========================================================
   START
   ========================================================= */

.ivk-stage-start {
  position: absolute;

  left: 4.5%;
  bottom: 10%;

  display: flex;
  align-items: center;

  gap: 10px;
}

.ivk-stage-start-dot {
  width: 12px;
  height: 12px;

  flex: 0 0 12px;

  border-radius: 50%;

  background: #051D3D;

  box-shadow:
    0 0 0 7px rgba(5, 29, 61, 0.07);
}

.ivk-stage-start span {
  display: block;

  margin-bottom: 1px;

  font-size: 8px;
  line-height: 1.3;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-stage-start p {
  margin: 0;

  font-size: 10px;
  line-height: 1.45;

  font-weight: 400;

  color: #687A8B;
}


/* =========================================================
   CHECKPOINTS — BASIS
   ========================================================= */

.ivk-stage-checkpoint {
  position: absolute;
  z-index: 5;

  width: 54px;
  height: 54px;

  cursor: pointer;

  transform:
    translate(-50%, -50%);

  user-select: none;
}


/* =========================================================
   CHECKPOINT POSITIES
   ========================================================= */

.ivk-stage-checkpoint-1 {
  left: 14%;
  top: 70%;
}

.ivk-stage-checkpoint-2 {
  left: 39%;
  top: 76%;
}

.ivk-stage-checkpoint-3 {
  left: 34%;
  top: 39%;
}

.ivk-stage-checkpoint-4 {
  left: 67%;
  top: 38%;
}

.ivk-stage-checkpoint-5 {
  left: 87%;
  top: 21%;
}


/* =========================================================
   CHECKPOINT PIN
   ========================================================= */

.ivk-stage-pin {
  position: relative;
  z-index: 4;

  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 5px solid #FFFFFF;

  border-radius: 50%;

  background: #051D3D;

  box-shadow:
    0 12px 26px rgba(5, 29, 61, 0.17),
    0 3px 7px rgba(5, 29, 61, 0.07);

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-stage-pin::after {
  content: "";

  position: absolute;

  left: 50%;
  top: calc(100% + 5px);

  width: 1px;
  height: 19px;

  transform: translateX(-50%);

  background:
    linear-gradient(
      to bottom,
      rgba(6, 175, 204, 0.8),
      rgba(6, 175, 204, 0)
    );
}

.ivk-stage-pin > span {
  font-size: 11px;
  line-height: 1;

  font-weight: 600;

  color: #FFFFFF;
}


/* afwisselende tinten */

.ivk-stage-checkpoint-2 .ivk-stage-pin {
  background: #06428A;
}

.ivk-stage-checkpoint-3 .ivk-stage-pin {
  background: #078FA8;
}

.ivk-stage-checkpoint-4 .ivk-stage-pin {
  background: #06428A;
}

.ivk-stage-checkpoint-5 .ivk-stage-pin {
  background: #051D3D;
}


/* =========================================================
   CHECKPOINT KAART — BASIS
   ========================================================= */

.ivk-stage-checkpoint-card {
  position: absolute;

  left: 50%;
  top: 69px;

  width: 180px;

  padding: 11px 13px 12px;

  transform: translateX(-50%);

  border: 1px solid #E1E9EE;

  border-radius: 11px;

  background:
    rgba(255, 255, 255, 0.97);

  box-shadow:
    0 12px 28px rgba(5, 29, 61, 0.08);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;

  pointer-events: none;
}


/* =========================================================
   KAART 01
   BOVEN DE ROUTE
   ========================================================= */

.ivk-stage-checkpoint-1
.ivk-stage-checkpoint-card {
  top: auto;
  bottom: 69px;
}


/* =========================================================
   KAART 02
   ONDER DE ROUTE
   ========================================================= */

.ivk-stage-checkpoint-2
.ivk-stage-checkpoint-card {
  top: 69px;
  bottom: auto;
}


/* =========================================================
   KAART 03
   ONDER DE ROUTE
   ========================================================= */

.ivk-stage-checkpoint-3
.ivk-stage-checkpoint-card {
  top: 69px;
  bottom: auto;
}


/* =========================================================
   KAART 04
   ONDER DE ROUTE
   ========================================================= */

.ivk-stage-checkpoint-4
.ivk-stage-checkpoint-card {
  top: 68px;
  bottom: auto;
}


/* =========================================================
   KAART 05
   RECHTS / ONDER
   ========================================================= */

.ivk-stage-checkpoint-5
.ivk-stage-checkpoint-card {
  top: 67px;
  bottom: auto;

  left: auto;
  right: -10px;

  transform: none;
}


/* =========================================================
   CHECKPOINT TEKST
   ========================================================= */

.ivk-stage-checkpoint-time {
  display: block;

  margin-bottom: 3px;

  font-size: 7.5px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.08em;

  color: #06AFCC;
}

.ivk-stage-checkpoint-title {
  display: block;

  margin-bottom: 3px;

  font-size: 12.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-stage-checkpoint-text {
  display: block;

  font-size: 9px;
  line-height: 1.5;

  font-weight: 400;

  color: #697B8B;
}


/* =========================================================
   CHECKPOINT HOVER
   ========================================================= */

.ivk-stage-checkpoint:hover
.ivk-stage-pin {
  transform: translateY(-5px);

  background: #06AFCC;

  box-shadow:
    0 16px 32px rgba(6, 175, 204, 0.22),
    0 4px 8px rgba(5, 29, 61, 0.08);
}

.ivk-stage-checkpoint:hover
.ivk-stage-checkpoint-card {
  border-color:
    rgba(6, 175, 204, 0.25);

  box-shadow:
    0 17px 35px rgba(5, 29, 61, 0.105);
}


/* kaart 01 boven */

.ivk-stage-checkpoint-1:hover
.ivk-stage-checkpoint-card {
  transform:
    translateX(-50%)
    translateY(-3px);
}


/* kaarten 02 / 03 / 04 */

.ivk-stage-checkpoint-2:hover
.ivk-stage-checkpoint-card,

.ivk-stage-checkpoint-3:hover
.ivk-stage-checkpoint-card,

.ivk-stage-checkpoint-4:hover
.ivk-stage-checkpoint-card {
  transform:
    translateX(-50%)
    translateY(-2px);
}


/* kaart 05 */

.ivk-stage-checkpoint-5:hover
.ivk-stage-checkpoint-card {
  transform:
    translateY(-2px);
}


/* =========================================================
   ACTIEVE CHECKPOINT PINS
   ========================================================= */

#ivk-stage-step-1:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-1
.ivk-stage-pin,

#ivk-stage-step-2:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-2
.ivk-stage-pin,

#ivk-stage-step-3:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-3
.ivk-stage-pin,

#ivk-stage-step-4:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-4
.ivk-stage-pin,

#ivk-stage-step-5:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-5
.ivk-stage-pin {

  background: #06AFCC;

  transform: translateY(-5px);

  box-shadow:
    0 0 0 7px rgba(6, 175, 204, 0.095),
    0 16px 33px rgba(6, 175, 204, 0.22);
}


/* =========================================================
   ACTIEVE CHECKPOINT KAARTEN
   ========================================================= */

#ivk-stage-step-1:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-1
.ivk-stage-checkpoint-card,

#ivk-stage-step-2:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-2
.ivk-stage-checkpoint-card,

#ivk-stage-step-3:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-3
.ivk-stage-checkpoint-card,

#ivk-stage-step-4:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-4
.ivk-stage-checkpoint-card,

#ivk-stage-step-5:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-5
.ivk-stage-checkpoint-card {
  border-color:
    rgba(6, 175, 204, 0.35);

  box-shadow:
    0 18px 38px rgba(5, 29, 61, 0.12);
}


/* actieve kaart 01 */

#ivk-stage-step-1:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-1
.ivk-stage-checkpoint-card {
  transform:
    translateX(-50%)
    translateY(-3px);
}


/* actieve kaarten 02 / 03 / 04 */

#ivk-stage-step-2:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-2
.ivk-stage-checkpoint-card,

#ivk-stage-step-3:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-3
.ivk-stage-checkpoint-card,

#ivk-stage-step-4:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-4
.ivk-stage-checkpoint-card {
  transform:
    translateX(-50%)
    translateY(-2px);
}


/* actieve kaart 05 */

#ivk-stage-step-5:checked
~ .ivk-stage-route-map
.ivk-stage-checkpoint-5
.ivk-stage-checkpoint-card {
  transform:
    translateY(-2px);
}


/* =========================================================
   FINISH
   ========================================================= */

.ivk-stage-finish {
  position: absolute;

  right: 4.2%;
  top: 4%;

  display: flex;
  align-items: center;

  gap: 10px;
}

.ivk-stage-flag {
  width: 46px;
  height: 46px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: #06AFCC;

  box-shadow:
    0 14px 30px rgba(6, 175, 204, 0.22);

  animation:
    ivkStageFlagFloat
    4s
    ease-in-out
    infinite;
}

@keyframes ivkStageFlagFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-5px);
  }

}

.ivk-stage-flag svg {
  width: 23px;
  height: 23px;

  fill: none;

  stroke: #FFFFFF;
  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-stage-finish span {
  display: block;

  margin-bottom: 2px;

  font-size: 8px;
  line-height: 1.3;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-stage-finish p {
  margin: 0;

  font-size: 10px;
  line-height: 1.4;

  font-weight: 400;

  color: #627486;
}


/* =========================================================
   PANELEN
   ========================================================= */

.ivk-stage-panels {
  border-top: 1px solid #E6EDF1;

  background: #FFFFFF;
}

.ivk-stage-panel {
  display: none;

  padding: 34px 38px 38px;

  animation:
    ivkStagePanelOpen
    0.32s
    ease both;
}

@keyframes ivkStagePanelOpen {

  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}


/* =========================================================
   ACTIEF PANEEL
   ========================================================= */

#ivk-stage-step-1:checked
~ .ivk-stage-panels
.ivk-stage-panel-1,

#ivk-stage-step-2:checked
~ .ivk-stage-panels
.ivk-stage-panel-2,

#ivk-stage-step-3:checked
~ .ivk-stage-panels
.ivk-stage-panel-3,

#ivk-stage-step-4:checked
~ .ivk-stage-panels
.ivk-stage-panel-4,

#ivk-stage-step-5:checked
~ .ivk-stage-panels
.ivk-stage-panel-5 {
  display: block;
}


/* =========================================================
   PANEL HEADER
   ========================================================= */

.ivk-stage-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 25px;

  margin-bottom: 23px;
}

.ivk-stage-panel-kicker {
  display: block;

  margin-bottom: 5px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-stage-panel-head h3 {
  max-width: 790px;

  margin: 0;

  font-size: clamp(21px, 2.2vw, 27px);
  line-height: 1.34;

  font-weight: 600;

  letter-spacing: -0.015em;

  color: #06428A;
}


/* =========================================================
   SLUITKNOP
   ========================================================= */

.ivk-stage-close {
  width: 34px;
  height: 34px;

  flex: 0 0 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid #DFE7EC;

  border-radius: 50%;

  background: #FFFFFF;

  color: #748696;

  font-size: 20px;
  line-height: 1;

  font-weight: 300;

  cursor: pointer;

  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

.ivk-stage-close:hover {
  color: #06AFCC;

  border-color: #06AFCC;

  transform: rotate(6deg);
}


/* =========================================================
   PANEL LAYOUT
   ========================================================= */

.ivk-stage-panel-layout {
  display: grid;

  grid-template-columns:
    minmax(0, 1.6fr)
    minmax(260px, 0.65fr);

  gap: 42px;

  align-items: start;
}

.ivk-stage-panel-text p {
  max-width: 760px;

  margin: 0 0 12px;

  font-size: 14px;
  line-height: 1.78;

  font-weight: 400;

  color: #53667C;
}

.ivk-stage-panel-text p:last-child {
  margin-bottom: 0;
}


/* =========================================================
   MINI CARD
   ========================================================= */

.ivk-stage-mini-card {
  position: relative;

  padding: 19px;

  border: 1px solid #E0E8ED;

  border-radius: 14px;

  background:
    linear-gradient(
      145deg,
      #FBFDFE,
      #F5FAFC
    );

  box-shadow:
    0 10px 25px rgba(5, 29, 61, 0.035);
}

.ivk-stage-mini-label {
  display: block;

  margin-bottom: 11px;

  font-size: 8px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}


/* =========================================================
   MINI TAGS
   ========================================================= */

.ivk-stage-mini-list {
  display: flex;
  flex-wrap: wrap;

  gap: 7px;
}

.ivk-stage-mini-list span,
.ivk-stage-search-tags span {
  display: inline-flex;

  padding: 7px 10px;

  border-radius: 8px;

  background: #FFFFFF;

  box-shadow:
    0 4px 12px rgba(5, 29, 61, 0.04);

  font-size: 10px;
  line-height: 1.35;

  font-weight: 400;

  color: #386378;
}


/* =========================================================
   ZOEKEN
   ========================================================= */

.ivk-stage-search-tags {
  display: flex;
  flex-wrap: wrap;

  gap: 7px;

  margin-bottom: 13px;
}

.ivk-stage-mini-card p {
  margin: 0;

  font-size: 11px;
  line-height: 1.65;

  font-weight: 400;

  color: #687A8B;
}


/* =========================================================
   BELLEN
   ========================================================= */

.ivk-stage-call-title {
  display: block;

  margin-bottom: 8px;

  font-size: 15px;
  line-height: 1.5;

  font-weight: 500;

  color: #06428A;
}


/* =========================================================
   VRAGEN
   ========================================================= */

.ivk-stage-question-stack {
  display: flex;
  flex-direction: column;

  gap: 6px;
}

.ivk-stage-question-stack span {
  display: block;

  padding: 7px 9px;

  border-left:
    2px solid
    rgba(6, 175, 204, 0.4);

  font-size: 10.5px;
  line-height: 1.45;

  font-weight: 400;

  color: #53667C;
}


/* =========================================================
   PERSOONLIJK VERHAAL
   ========================================================= */

.ivk-stage-story {
  position: relative;

  overflow: hidden;

  padding: 21px;

  border-radius: 15px;

  background: #051D3D;

  box-shadow:
    0 14px 30px rgba(5, 29, 61, 0.12);
}

.ivk-stage-story::after {
  content: "";

  position: absolute;

  width: 125px;
  height: 125px;

  right: -62px;
  top: -60px;

  border:
    1px solid
    rgba(6, 175, 204, 0.18);

  border-radius: 50%;
}

.ivk-stage-story-label {
  position: relative;
  z-index: 2;

  display: block;

  margin-bottom: 10px;

  font-size: 8px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-stage-story p {
  position: relative;
  z-index: 2;

  margin: 0 0 10px;

  font-size: 11.5px;
  line-height: 1.7;

  font-weight: 400;

  color: rgba(255, 255, 255, 0.77);
}

.ivk-stage-story-line {
  position: relative;
  z-index: 2;

  display: block;

  margin-top: 14px;

  padding-top: 13px;

  border-top:
    1px solid
    rgba(255, 255, 255, 0.11);

  font-size: 11.5px;
  line-height: 1.6;

  font-weight: 500;

  color: #FFFFFF;
}


/* =========================================================
   FOCUS
   ========================================================= */

.ivk-stage-checkpoint:focus-visible,
.ivk-stage-close:focus-visible {
  outline:
    2px solid
    rgba(6, 175, 204, 0.55);

  outline-offset: 4px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 960px) {

  .ivk-stage {
    padding:
      70px
      22px
      78px;
  }

  .ivk-stage-route-map {
    min-height: 560px;
  }

  .ivk-stage-checkpoint-card {
    width: 155px;
  }

  .ivk-stage-panel-layout {
    grid-template-columns:
      minmax(0, 1.35fr)
      minmax(230px, 0.65fr);

    gap: 28px;
  }

}


/* =========================================================
   MOBIEL
   ROUTE WORDT VERTICAAL
   ========================================================= */

@media (max-width: 700px) {

  .ivk-stage {
    padding:
      58px
      18px
      66px;
  }


  /* Header */

  .ivk-stage-header {
    gap: 14px;

    margin-bottom: 34px;
  }

  .ivk-stage-header-number {
    width: 46px;
    height: 46px;

    flex-basis: 46px;

    border-radius: 13px;
  }

  .ivk-stage-header h2 {
    font-size: 31px;
  }

  .ivk-stage-header p {
    font-size: 14px;
  }


  /* Route heading */

  .ivk-stage-route-heading {
    display: block;
  }

  .ivk-stage-click-hint {
    margin-top: 11px;
  }


  /* Route card */

  .ivk-stage-route-card {
    border-radius: 18px;
  }


  /* Route map */

  .ivk-stage-route-map {
    min-height: 700px;

    padding:
      35px
      18px;
  }


  /* Desktop SVG verbergen */

  .ivk-stage-road {
    display: none;
  }


  /* verticale basislijn */

  .ivk-stage-route-map::before {
    content: "";

    position: absolute;

    left: 47px;
    top: 65px;
    bottom: 68px;

    width: 4px;

    border-radius: 99px;

    background:
      linear-gradient(
        to bottom,
        #E3EDF1 0%,
        #DCE9EE 100%
      );
  }


  /* turquoise stippellijn */

  .ivk-stage-route-map::after {
    content: "";

    position: absolute;

    left: 48px;
    top: 76px;
    bottom: 78px;

    width: 2px;

    background:
      repeating-linear-gradient(
        to bottom,
        #06AFCC 0,
        #06AFCC 8px,
        transparent 8px,
        transparent 15px
      );

    opacity: 0.6;
  }


  /* Start verbergen */

  .ivk-stage-start {
    display: none;
  }


  /* Checkpoints */

  .ivk-stage-checkpoint {
    left: 48px !important;

    width: 46px;
    height: 46px;

    transform:
      translate(-50%, -50%);
  }

  .ivk-stage-checkpoint-1 {
    top: 11%;
  }

  .ivk-stage-checkpoint-2 {
    top: 29%;
  }

  .ivk-stage-checkpoint-3 {
    top: 47%;
  }

  .ivk-stage-checkpoint-4 {
    top: 65%;
  }

  .ivk-stage-checkpoint-5 {
    top: 83%;
  }


  /* pins */

  .ivk-stage-pin {
    width: 46px;
    height: 46px;

    border-width: 4px;
  }

  .ivk-stage-pin::after {
    display: none;
  }


  /* Alle kaartjes rechts van route */

  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-1
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-2
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-3
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-4
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-5
  .ivk-stage-checkpoint-card {

    top: 50%;
    bottom: auto;

    left: 62px;
    right: auto;

    width:
      min(
        235px,
        calc(100vw - 125px)
      );

    transform:
      translateY(-50%);
  }


  /* hover mobiel */

  .ivk-stage-checkpoint-1:hover
  .ivk-stage-checkpoint-card,

  .ivk-stage-checkpoint-2:hover
  .ivk-stage-checkpoint-card,

  .ivk-stage-checkpoint-3:hover
  .ivk-stage-checkpoint-card,

  .ivk-stage-checkpoint-4:hover
  .ivk-stage-checkpoint-card,

  .ivk-stage-checkpoint-5:hover
  .ivk-stage-checkpoint-card {
    transform:
      translateY(calc(-50% - 2px));
  }


  /* actieve kaart mobiel */

  #ivk-stage-step-1:checked
  ~ .ivk-stage-route-map
  .ivk-stage-checkpoint-1
  .ivk-stage-checkpoint-card,

  #ivk-stage-step-2:checked
  ~ .ivk-stage-route-map
  .ivk-stage-checkpoint-2
  .ivk-stage-checkpoint-card,

  #ivk-stage-step-3:checked
  ~ .ivk-stage-route-map
  .ivk-stage-checkpoint-3
  .ivk-stage-checkpoint-card,

  #ivk-stage-step-4:checked
  ~ .ivk-stage-route-map
  .ivk-stage-checkpoint-4
  .ivk-stage-checkpoint-card,

  #ivk-stage-step-5:checked
  ~ .ivk-stage-route-map
  .ivk-stage-checkpoint-5
  .ivk-stage-checkpoint-card {
    transform:
      translateY(calc(-50% - 2px));
  }


  /* Finish */

  .ivk-stage-finish {
    right: auto;
    left: 27px;

    top: auto;
    bottom: 17px;

    transform: scale(0.88);

    transform-origin: left bottom;
  }


  /* panel */

  .ivk-stage-panel {
    padding:
      25px
      20px
      27px;
  }

  .ivk-stage-panel-head {
    gap: 14px;
  }

  .ivk-stage-panel-head h3 {
    font-size: 20px;
  }

  .ivk-stage-panel-layout {
    grid-template-columns: 1fr;

    gap: 22px;
  }

  .ivk-stage-panel-text p {
    font-size: 13.5px;
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 480px) {

  .ivk-stage {
    padding:
      52px
      17px
      60px;
  }

  .ivk-stage-header {
    display: block;
  }

  .ivk-stage-header-number {
    margin-bottom: 13px;
  }

  .ivk-stage-header h2 {
    font-size: 29px;
  }

  .ivk-stage-route-heading h3 {
    font-size: 18px;
  }

  .ivk-stage-route-map {
    min-height: 710px;
  }

  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-1
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-2
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-3
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-4
  .ivk-stage-checkpoint-card,
  .ivk-stage-checkpoint-5
  .ivk-stage-checkpoint-card {

    width:
      min(
        220px,
        calc(100vw - 120px)
      );

    padding:
      10px
      11px;
  }

  .ivk-stage-checkpoint-title {
    font-size: 11.5px;
  }

  .ivk-stage-checkpoint-text {
    font-size: 8.5px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ivk-stage-click-dot,
  .ivk-stage-flag,
  .ivk-stage-panel {
    animation: none;
  }

  .ivk-stage-traveller {
    display: none;
  }

  .ivk-stage-pin,
  .ivk-stage-checkpoint-card,
  .ivk-stage-close {
    transition: none;
  }

}


/* =========================================================
   ELEMENTOR FULL WIDTH FIX
   ========================================================= */

.elementor-widget-html:has(.ivk-stage),
.elementor-widget-html:has(.ivk-stage)
> .elementor-widget-container,
.elementor-section:has(.ivk-stage),
.elementor-container:has(.ivk-stage),
.e-con:has(.ivk-stage) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/* =========================================================
   01 STAGE — LEESBAARHEID DESKTOP
   ========================================================= */

/* Kleine labels boven de kaartjes */
.ivk-stage-checkpoint-time {
  font-size: 9px;
  line-height: 1.4;
}


/* Titel in routekaartje */
.ivk-stage-checkpoint-title {
  font-size: 14px;
  line-height: 1.4;
}


/* Uitleg in routekaartje */
.ivk-stage-checkpoint-text {
  font-size: 11px;
  line-height: 1.5;
}


/* Routekaartjes iets ruimer */
.ivk-stage-checkpoint-card {
  width: 195px;

  padding:
    13px
    15px
    14px;
}


/* Start- en finishtekst */
.ivk-stage-start p,
.ivk-stage-finish p {
  font-size: 11px;
  line-height: 1.5;
}


/* Tags en kleine kaarten in uitgeklapt gedeelte */
.ivk-stage-mini-list span,
.ivk-stage-search-tags span {
  font-size: 11.5px;
  line-height: 1.4;
}


/* Tekst rechter informatiekaart */
.ivk-stage-mini-card p {
  font-size: 12.5px;
  line-height: 1.7;
}


/* 'Durf ook gewoon te bellen' */
.ivk-stage-call-title {
  font-size: 16px;
  line-height: 1.5;
}


/* Vragen tijdens stagegesprek */
.ivk-stage-question-stack span {
  font-size: 12px;
  line-height: 1.5;
}


/* =========================================================
   SABIC BLOK GROTER
   ========================================================= */

.ivk-stage-story-label {
  font-size: 9px;
}

.ivk-stage-story p {
  font-size: 13px;
  line-height: 1.72;
}

.ivk-stage-story-line {
  font-size: 13px;
  line-height: 1.65;
}


/* =========================================================
   MOBIEL NIET TE GROOT MAKEN
   ========================================================= */

@media (max-width: 700px) {

  .ivk-stage-checkpoint-card {
    width:
      min(
        235px,
        calc(100vw - 125px)
      );
  }

  .ivk-stage-checkpoint-time {
    font-size: 8.5px;
  }

  .ivk-stage-checkpoint-title {
    font-size: 12.5px;
  }

  .ivk-stage-checkpoint-text {
    font-size: 10px;
  }

  .ivk-stage-story p,
  .ivk-stage-story-line {
    font-size: 12.5px;
  }

}


/* =========================================================
   IVK — INTERACTIE HINTS
   ========================================================= */

.ivk-interaction-hint {
  display: flex;
  align-items: center;

  gap: 14px;

  margin:
    0
    0
    24px;

  padding:
    14px
    17px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 13px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.065),
      rgba(6, 175, 204, 0.025)
    );
}

.ivk-interaction-hint-icon {
  width: 38px;
  height: 38px;

  flex: 0 0 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #06AFCC;

  color: #FFFFFF;

  font-size: 17px;
  line-height: 1;
}

.ivk-interaction-hint-copy {
  min-width: 0;
}

.ivk-interaction-hint-title {
  display: block;

  margin-bottom: 2px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-interaction-hint-text {
  display: block;

  font-size: 11.5px;
  line-height: 1.55;

  color: #607485;
}


/* =========================================================
   KLEINE CTA IN KLIKBARE ELEMENTEN
   ========================================================= */

.ivk-click-cta {
  display: inline-flex;
  align-items: center;

  gap: 6px;

  margin-top: 9px;

  font-size: 10.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06AFCC;

  transition:
    gap .2s ease,
    transform .2s ease;
}

.ivk-click-cta::after {
  content: "→";

  font-size: 12px;
}

label:hover .ivk-click-cta,
button:hover .ivk-click-cta,
a:hover .ivk-click-cta {
  gap: 9px;
}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-interaction-hint {
    align-items: flex-start;

    gap: 11px;

    padding:
      13px
      14px;

    margin-bottom: 19px;
  }

  .ivk-interaction-hint-icon {
    width: 34px;
    height: 34px;

    flex-basis: 34px;

    font-size: 15px;
  }

  .ivk-interaction-hint-title {
    font-size: 12px;
  }

  .ivk-interaction-hint-text {
    font-size: 11px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-50d6ed5 *//* =========================================================
   IVK STUDENTENGIDS
   02 — LINKEDIN & NETWERK
   ========================================================= */

.ivk-linkedin,
.ivk-linkedin * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}


/* =========================================================
   BASIS
   ========================================================= */

.ivk-linkedin {
  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 84px 24px 90px;

  background: #FFFFFF;

  overflow: hidden;

  scroll-margin-top: 90px;
}

.ivk-linkedin-container {
  width: 100%;
  max-width: 1180px;

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.ivk-linkedin-header {
  display: flex;
  align-items: flex-start;

  gap: 21px;

  max-width: 980px;

  margin-bottom: 44px;
}

.ivk-linkedin-header-number {
  width: 56px;
  height: 56px;

  flex: 0 0 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 17px;

  background:
    linear-gradient(
      145deg,
      rgba(6, 175, 204, 0.13),
      rgba(6, 175, 204, 0.055)
    );

  box-shadow:
    0 9px 24px rgba(6, 175, 204, 0.09),
    inset 0 0 0 1px rgba(6, 175, 204, 0.07);

  color: #06AFCC;

  font-size: 15px;
  line-height: 1;

  font-weight: 700;
}

.ivk-linkedin-eyebrow {
  display: block;

  margin: 1px 0 5px;

  font-size: 10px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-linkedin-header h2 {
  margin: 0 0 9px;

  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -0.025em;

  color: #06428A;
}

.ivk-linkedin-header p {
  max-width: 810px;

  margin: 0;

  font-size: 15px;
  line-height: 1.72;

  font-weight: 400;

  color: #53667C;
}


/* =========================================================
   HOOFDGRID
   ========================================================= */

.ivk-linkedin-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.48fr)
    minmax(340px, 0.72fr);

  gap: 24px;

  align-items: start;
}


/* =========================================================
   NETWERK CARD
   ========================================================= */

.ivk-network-card {
  position: relative;

  min-width: 0;

  overflow: hidden;

  border: 1px solid #DFE8ED;

  border-radius: 24px;

  background:
    linear-gradient(
      180deg,
      #FBFDFE 0%,
      #F7FAFC 100%
    );

  box-shadow:
    0 20px 50px rgba(5, 29, 61, 0.065),
    0 3px 10px rgba(5, 29, 61, 0.025);
}


/* =========================================================
   VERBORGEN CONTROLS
   ========================================================= */

.ivk-network-control {
  position: fixed;

  top: 50%;
  left: 50%;

  width: 1px;
  height: 1px;

  margin: 0;
  padding: 0;

  border: 0;

  opacity: 0;

  clip: rect(0 0 0 0);
  clip-path: inset(50%);

  overflow: hidden;

  pointer-events: none;
}


/* =========================================================
   NETWERK HEADER
   ========================================================= */

.ivk-network-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 20px;

  padding: 25px 27px 0;
}

.ivk-network-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-network-head h3 {
  max-width: 520px;

  margin: 0;

  font-size: 19px;
  line-height: 1.45;

  font-weight: 600;

  color: #051D3D;
}


/* =========================================================
   DUIDELIJKE KLIK-HINT
   ========================================================= */

.ivk-network-hint {
  display: flex;
  align-items: center;

  gap: 10px;

  flex: 0 0 auto;

  min-width: 230px;

  padding:
    10px
    13px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.075),
      rgba(6, 175, 204, 0.025)
    );

  box-shadow:
    0 7px 18px rgba(5, 29, 61, 0.035);
}

.ivk-network-hint-dot {
  width: 8px;
  height: 8px;

  flex: 0 0 8px;

  border-radius: 50%;

  background: #06AFCC;

  box-shadow:
    0 0 0 5px rgba(6, 175, 204, 0.09);

  animation:
    ivkLinkedinHintPulse
    2.7s
    ease-in-out
    infinite;
}

.ivk-network-hint-copy {
  display: block;
  min-width: 0;
}

.ivk-network-hint-title {
  display: block;

  margin-bottom: 1px;

  font-size: 12px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-network-hint-text {
  display: block;

  font-size: 10.5px;
  line-height: 1.45;

  font-weight: 400;

  color: #667A89;
}

@keyframes ivkLinkedinHintPulse {

  0%,
  100% {
    box-shadow:
      0 0 0 4px rgba(6, 175, 204, 0.07);
  }

  50% {
    box-shadow:
      0 0 0 8px rgba(6, 175, 204, 0.02);
  }

}


/* =========================================================
   NETWERK VISUAL
   ========================================================= */

.ivk-network-visual {
  position: relative;

  min-height: 535px;

  margin-top: 4px;

  overflow: hidden;
}


/* =========================================================
   ORBITS
   ========================================================= */

.ivk-network-orbit {
  position: absolute;

  left: 50%;
  top: 50%;

  border-radius: 50%;

  transform:
    translate(-50%, -50%);

  pointer-events: none;
}

.ivk-network-orbit-one {
  width: 330px;
  height: 330px;

  border:
    1px solid
    rgba(6, 175, 204, 0.09);
}

.ivk-network-orbit-two {
  width: 440px;
  height: 440px;

  border:
    1px dashed
    rgba(6, 175, 204, 0.085);

  animation:
    ivkNetworkOrbitRotate
    50s
    linear
    infinite;
}

@keyframes ivkNetworkOrbitRotate {

  from {
    transform:
      translate(-50%, -50%)
      rotate(0deg);
  }

  to {
    transform:
      translate(-50%, -50%)
      rotate(360deg);
  }

}

.ivk-network-glow {
  position: absolute;

  border-radius: 50%;

  pointer-events: none;
}

.ivk-network-glow-one {
  width: 180px;
  height: 180px;

  left: -75px;
  top: 90px;

  background:
    rgba(6, 175, 204, 0.035);
}

.ivk-network-glow-two {
  width: 220px;
  height: 220px;

  right: -90px;
  bottom: 30px;

  background:
    rgba(6, 66, 138, 0.03);
}


/* =========================================================
   VERBINDINGSLIJNEN
   ========================================================= */

.ivk-network-lines {
  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  pointer-events: none;
}

.ivk-network-line {
  stroke: #C9D9E1;
  stroke-width: 1.4;

  stroke-dasharray: 5 7;

  opacity: 0.75;

  transition:
    stroke 0.25s ease,
    stroke-width 0.25s ease,
    opacity 0.25s ease;
}

#ivk-network-students:checked
~ .ivk-network-head
+ .ivk-network-visual
.ivk-network-line-students,

#ivk-network-teachers:checked
~ .ivk-network-head
+ .ivk-network-visual
.ivk-network-line-teachers,

#ivk-network-alumni:checked
~ .ivk-network-head
+ .ivk-network-visual
.ivk-network-line-alumni,

#ivk-network-speakers:checked
~ .ivk-network-head
+ .ivk-network-visual
.ivk-network-line-speakers,

#ivk-network-companies:checked
~ .ivk-network-head
+ .ivk-network-visual
.ivk-network-line-companies,

#ivk-network-supervisors:checked
~ .ivk-network-head
+ .ivk-network-visual
.ivk-network-line-supervisors {
  stroke: #06AFCC;
  stroke-width: 2.2;
  opacity: 1;
}


/* =========================================================
   JIJ
   ========================================================= */

.ivk-network-you {
  position: absolute;
  z-index: 5;

  left: 50%;
  top: 50%;

  display: flex;
  flex-direction: column;
  align-items: center;

  transform:
    translate(-50%, -50%);
}

.ivk-network-you-ring {
  width: 115px;
  height: 115px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border: 7px solid #FFFFFF;

  border-radius: 50%;

  background:
    linear-gradient(
      145deg,
      #06428A,
      #051D3D
    );

  box-shadow:
    0 20px 36px rgba(5, 29, 61, 0.18),
    0 0 0 9px rgba(6, 175, 204, 0.055);

  animation:
    ivkNetworkCenterFloat
    5s
    ease-in-out
    infinite;
}

@keyframes ivkNetworkCenterFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }

}

.ivk-network-you-small {
  margin-bottom: 1px;

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-network-you-title {
  font-size: 25px;

  font-weight: 600;

  color: #FFFFFF;
}

.ivk-network-you-caption {
  width: 170px;

  margin-top: 13px;

  text-align: center;

  font-size: 10.5px;
  line-height: 1.5;

  color: #7A8C9B;
}


/* =========================================================
   NODES
   ========================================================= */

.ivk-network-node {
  position: absolute;
  z-index: 6;

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 7px;

  width: 120px;

  cursor: pointer;

  user-select: none;
}

.ivk-network-node-students {
  left: 11%;
  top: 10%;
}

.ivk-network-node-teachers {
  right: 11%;
  top: 10%;
}

.ivk-network-node-alumni {
  left: 5%;
  top: 46%;
}

.ivk-network-node-speakers {
  right: 5%;
  top: 46%;
}

.ivk-network-node-companies {
  left: 18%;
  bottom: 5%;
}

.ivk-network-node-supervisors {
  right: 18%;
  bottom: 5%;
}


/* =========================================================
   NODE ICON
   ========================================================= */

.ivk-network-node-icon {
  width: 62px;
  height: 62px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 5px solid #FFFFFF;

  border-radius: 50%;

  background: #FFFFFF;

  box-shadow:
    0 12px 27px rgba(5, 29, 61, 0.10);

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-network-node-icon svg {
  width: 25px;
  height: 25px;

  fill: none;

  stroke: #06428A;
  stroke-width: 1.6;

  stroke-linecap: round;
  stroke-linejoin: round;

  transition:
    stroke 0.25s ease;
}

.ivk-network-node-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 30px;

  padding: 5px 11px;

  border: 1px solid #E0E8ED;

  border-radius: 999px;

  background:
    rgba(255, 255, 255, 0.96);

  box-shadow:
    0 7px 16px rgba(5, 29, 61, 0.045);

  text-align: center;

  font-size: 10.5px;
  line-height: 1.35;

  font-weight: 500;

  color: #53667C;
}


/* =========================================================
   NODE BEWEGING
   ========================================================= */

.ivk-network-node-students,
.ivk-network-node-speakers,
.ivk-network-node-companies {
  animation:
    ivkNetworkNodeFloatA
    6s
    ease-in-out
    infinite;
}

.ivk-network-node-teachers,
.ivk-network-node-alumni,
.ivk-network-node-supervisors {
  animation:
    ivkNetworkNodeFloatB
    7s
    ease-in-out
    infinite;
}

@keyframes ivkNetworkNodeFloatA {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }

}

@keyframes ivkNetworkNodeFloatB {

  0%,
  100% {
    transform: translateY(-2px);
  }

  50% {
    transform: translateY(3px);
  }

}


/* =========================================================
   NODE HOVER
   ========================================================= */

.ivk-network-node:hover
.ivk-network-node-icon {
  transform: translateY(-3px);

  background: #06AFCC;

  box-shadow:
    0 16px 32px rgba(6, 175, 204, 0.17);
}

.ivk-network-node:hover
.ivk-network-node-icon svg {
  stroke: #FFFFFF;
}


/* =========================================================
   ACTIEVE NODE
   ========================================================= */

#ivk-network-students:checked
~ .ivk-network-visual
.ivk-network-node-students
.ivk-network-node-icon,

#ivk-network-teachers:checked
~ .ivk-network-visual
.ivk-network-node-teachers
.ivk-network-node-icon,

#ivk-network-alumni:checked
~ .ivk-network-visual
.ivk-network-node-alumni
.ivk-network-node-icon,

#ivk-network-speakers:checked
~ .ivk-network-visual
.ivk-network-node-speakers
.ivk-network-node-icon,

#ivk-network-companies:checked
~ .ivk-network-visual
.ivk-network-node-companies
.ivk-network-node-icon,

#ivk-network-supervisors:checked
~ .ivk-network-visual
.ivk-network-node-supervisors
.ivk-network-node-icon {
  background: #06AFCC;

  box-shadow:
    0 0 0 7px rgba(6, 175, 204, 0.09),
    0 16px 32px rgba(6, 175, 204, 0.18);
}

#ivk-network-students:checked
~ .ivk-network-visual
.ivk-network-node-students
.ivk-network-node-icon svg,

#ivk-network-teachers:checked
~ .ivk-network-visual
.ivk-network-node-teachers
.ivk-network-node-icon svg,

#ivk-network-alumni:checked
~ .ivk-network-visual
.ivk-network-node-alumni
.ivk-network-node-icon svg,

#ivk-network-speakers:checked
~ .ivk-network-visual
.ivk-network-node-speakers
.ivk-network-node-icon svg,

#ivk-network-companies:checked
~ .ivk-network-visual
.ivk-network-node-companies
.ivk-network-node-icon svg,

#ivk-network-supervisors:checked
~ .ivk-network-visual
.ivk-network-node-supervisors
.ivk-network-node-icon svg {
  stroke: #FFFFFF;
}


/* =========================================================
   NETWERKPANELEN
   ========================================================= */

.ivk-network-panels {
  border-top: 1px solid #E3EBEF;

  background: #FFFFFF;
}

.ivk-network-panel {
  display: none;

  padding: 27px 29px 30px;

  animation:
    ivkNetworkPanelIn
    0.3s
    ease both;
}

@keyframes ivkNetworkPanelIn {

  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}

#ivk-network-students:checked
~ .ivk-network-panels
.ivk-network-panel-students,

#ivk-network-teachers:checked
~ .ivk-network-panels
.ivk-network-panel-teachers,

#ivk-network-alumni:checked
~ .ivk-network-panels
.ivk-network-panel-alumni,

#ivk-network-speakers:checked
~ .ivk-network-panels
.ivk-network-panel-speakers,

#ivk-network-companies:checked
~ .ivk-network-panels
.ivk-network-panel-companies,

#ivk-network-supervisors:checked
~ .ivk-network-panels
.ivk-network-panel-supervisors {
  display: block;
}


/* =========================================================
   NETWERKPANEEL TEKST — GROTER
   ========================================================= */

.ivk-network-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 12px;
}

.ivk-network-panel-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-network-panel h4 {
  max-width: 620px;

  margin: 0;

  font-size: 19px;
  line-height: 1.45;

  font-weight: 600;

  color: #06428A;
}

.ivk-network-panel p {
  max-width: 700px;

  margin: 0 0 10px;

  font-size: 14px;
  line-height: 1.75;

  font-weight: 400;

  color: #53667C;
}

.ivk-network-panel p:last-child {
  margin-bottom: 0;
}


/* =========================================================
   SLUITEN
   ========================================================= */

.ivk-network-close {
  width: 32px;
  height: 32px;

  flex: 0 0 32px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid #DFE7EC;

  border-radius: 50%;

  color: #778A99;

  font-size: 18px;

  cursor: pointer;

  transition:
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.ivk-network-close:hover {
  border-color: #06AFCC;

  color: #06AFCC;

  transform: rotate(6deg);
}


/* =========================================================
   PROFIELKOLOM
   ========================================================= */

.ivk-profile-column {
  display: flex;
  flex-direction: column;

  gap: 12px;

  min-width: 0;
}


/* =========================================================
   PROFIELKAART
   ========================================================= */

.ivk-profile-card {
  overflow: hidden;

  border: 1px solid #DFE7ED;

  border-radius: 24px;

  background: #FFFFFF;

  box-shadow:
    0 20px 50px rgba(5, 29, 61, 0.07),
    0 3px 10px rgba(5, 29, 61, 0.025);
}


/* =========================================================
   COVER
   ========================================================= */

.ivk-profile-cover {
  position: relative;

  min-height: 120px;

  padding: 20px 21px;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 85% 15%,
      rgba(6, 175, 204, 0.42),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      #051D3D,
      #06428A
    );
}

.ivk-profile-cover::after {
  content: "";

  position: absolute;

  width: 150px;
  height: 150px;

  right: -70px;
  top: -85px;

  border:
    1px solid
    rgba(255, 255, 255, 0.13);

  border-radius: 50%;
}

.ivk-profile-cover-grid {
  position: absolute;

  width: 80px;
  height: 80px;

  right: 25px;
  bottom: -12px;

  opacity: 0.16;

  background-image:
    radial-gradient(
      #FFFFFF 1.2px,
      transparent 1.2px
    );

  background-size: 11px 11px;
}

.ivk-profile-cover-label {
  position: relative;
  z-index: 2;

  display: block;

  margin-bottom: 6px;

  font-size: 9px;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-profile-cover-line {
  position: relative;
  z-index: 2;

  display: block;

  max-width: 250px;

  font-size: 14px;
  line-height: 1.55;

  font-weight: 500;

  color: #FFFFFF;
}


/* =========================================================
   PROFIEL MAIN
   ========================================================= */

.ivk-profile-main {
  position: relative;

  padding:
    54px
    21px
    20px;
}

.ivk-profile-avatar {
  position: absolute;

  left: 21px;
  top: -39px;

  width: 78px;
  height: 78px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 5px solid #FFFFFF;

  border-radius: 50%;

  background:
    linear-gradient(
      145deg,
      #06AFCC,
      #078CA4
    );

  box-shadow:
    0 10px 25px rgba(5, 29, 61, 0.13);

  font-size: 19px;

  color: #FFFFFF;
}

.ivk-profile-demo-label {
  display: block;

  margin-bottom: 4px;

  font-size: 8.5px;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-profile-main h3 {
  margin: 0 0 4px;

  font-size: 20px;
  line-height: 1.35;

  font-weight: 600;

  color: #051D3D;
}

.ivk-profile-headline {
  margin: 0 0 8px;

  font-size: 12px;
  line-height: 1.55;

  color: #53667C;
}

.ivk-profile-meta {
  font-size: 10.5px;
  line-height: 1.45;

  color: #82919E;
}


/* =========================================================
   PROFIELONDERDELEN
   ========================================================= */

.ivk-profile-parts {
  border-top: 1px solid #E7EDF1;
}

.ivk-profile-part {
  border-bottom: 1px solid #E7EDF1;
}

.ivk-profile-part:last-child {
  border-bottom: 0;
}

.ivk-profile-part summary {
  min-height: 74px;

  display: grid;

  grid-template-columns:
    32px
    minmax(0, 1fr)
    27px;

  gap: 11px;

  align-items: center;

  padding:
    13px
    17px;

  list-style: none;

  cursor: pointer;

  transition:
    background 0.2s ease;
}

.ivk-profile-part summary::-webkit-details-marker {
  display: none;
}

.ivk-profile-part summary::marker {
  display: none;
}

.ivk-profile-part summary:hover {
  background: #F8FBFC;
}


/* =========================================================
   PROFIEL NUMMER
   ========================================================= */

.ivk-profile-part-number {
  width: 30px;
  height: 30px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 8px;

  background:
    rgba(6, 175, 204, 0.08);

  font-size: 9px;

  font-weight: 600;

  color: #06AFCC;
}


/* =========================================================
   PROFIELONDERDELEN — GROTER
   ========================================================= */

.ivk-profile-part-copy {
  min-width: 0;
}

.ivk-profile-part-title {
  display: block;

  margin-bottom: 3px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 500;

  color: #06428A;
}

.ivk-profile-part-preview {
  display: block;

  font-size: 10.5px;
  line-height: 1.5;

  color: #788A99;
}


/* =========================================================
   PLUS
   ========================================================= */

.ivk-profile-part-plus {
  position: relative;

  width: 27px;
  height: 27px;

  border-radius: 50%;

  background:
    rgba(6, 175, 204, 0.065);
}

.ivk-profile-part-plus::before,
.ivk-profile-part-plus::after {
  content: "";

  position: absolute;

  left: 50%;
  top: 50%;

  width: 10px;
  height: 1.5px;

  border-radius: 99px;

  background: #06AFCC;

  transform:
    translate(-50%, -50%);

  transition:
    transform 0.2s ease;
}

.ivk-profile-part-plus::after {
  transform:
    translate(-50%, -50%)
    rotate(90deg);
}

.ivk-profile-part[open]
.ivk-profile-part-plus::after {
  transform:
    translate(-50%, -50%)
    rotate(0);
}

.ivk-profile-part[open]
summary {
  background: #F8FBFC;
}


/* =========================================================
   UITGEKLAPT ANTWOORD — GROTER
   ========================================================= */

.ivk-profile-part-content {
  padding:
    0
    18px
    18px
    60px;

  animation:
    ivkProfilePartOpen
    0.22s
    ease both;
}

@keyframes ivkProfilePartOpen {

  from {
    opacity: 0;
    transform: translateY(-3px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}

.ivk-profile-part-content p {
  margin: 0;

  font-size: 13px;
  line-height: 1.72;

  font-weight: 400;

  color: #536B7E;
}


/* =========================================================
   LINKEDIN KNOP
   ========================================================= */

.ivk-linkedin-button {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 15px;

  min-height: 53px;

  padding:
    0
    18px;

  border-radius: 13px;

  background: #051D3D;

  text-decoration: none;

  box-shadow:
    0 10px 25px rgba(5, 29, 61, 0.11);

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.ivk-linkedin-button:hover {
  transform: translateY(-2px);

  box-shadow:
    0 14px 29px rgba(5, 29, 61, 0.15);
}

.ivk-linkedin-button span {
  font-size: 12.5px;
  line-height: 1.4;

  font-weight: 500;

  color: #FFFFFF;
}

.ivk-linkedin-button svg {
  width: 19px;
  height: 19px;

  fill: none;

  stroke: #06AFCC;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   PERSOONLIJK VERHAAL
   ========================================================= */

.ivk-linkedin-story {
  position: relative;

  display: grid;

  grid-template-columns:
    80px
    minmax(0, 1.7fr)
    minmax(230px, 0.65fr);

  gap: 25px;

  align-items: center;

  overflow: hidden;

  margin-top: 25px;

  padding: 29px 31px;

  border-radius: 19px;

  background: #051D3D;

  box-shadow:
    0 18px 42px rgba(5, 29, 61, 0.13);
}

.ivk-linkedin-story::after {
  content: "";

  position: absolute;

  width: 240px;
  height: 240px;

  right: -110px;
  top: -130px;

  border:
    1px solid
    rgba(6, 175, 204, 0.15);

  border-radius: 50%;
}

.ivk-linkedin-story-marker {
  position: relative;
  z-index: 2;

  width: 72px;
  height: 72px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border-radius: 18px;

  background:
    rgba(6, 175, 204, 0.11);
}

.ivk-linkedin-story-marker > span {
  margin-bottom: 1px;

  font-size: 23px;

  color: #FFFFFF;
}

.ivk-linkedin-story-marker small {
  font-size: 7px;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-linkedin-story-copy {
  position: relative;
  z-index: 2;
}

.ivk-linkedin-story-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 8.5px;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-linkedin-story-copy h3 {
  margin: 0 0 9px;

  font-size: 19px;
  line-height: 1.4;

  font-weight: 600;

  color: #FFFFFF;
}

.ivk-linkedin-story-copy p {
  max-width: 680px;

  margin: 0 0 8px;

  font-size: 13px;
  line-height: 1.7;

  font-weight: 400;

  color:
    rgba(255, 255, 255, 0.78);
}

.ivk-linkedin-story-copy p:last-child {
  margin-bottom: 0;
}

.ivk-linkedin-story-message {
  position: relative;
  z-index: 2;

  padding-left: 25px;

  border-left:
    1px solid
    rgba(255, 255, 255, 0.13);
}

.ivk-linkedin-story-message span {
  display: block;

  font-size: 17px;
  line-height: 1.45;

  font-weight: 400;

  color:
    rgba(255, 255, 255, 0.76);
}

.ivk-linkedin-story-message span:last-child {
  color: #FFFFFF;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 980px) {

  .ivk-linkedin {
    padding:
      70px
      22px
      78px;
  }

  .ivk-linkedin-grid {
    grid-template-columns:
      minmax(0, 1.2fr)
      minmax(310px, 0.8fr);

    gap: 18px;
  }

  .ivk-network-visual {
    min-height: 520px;
  }

  .ivk-network-node {
    width: 105px;
  }

  .ivk-linkedin-story {
    grid-template-columns:
      70px
      1fr;

    gap: 20px;
  }

  .ivk-linkedin-story-message {
    grid-column: 2;

    padding:
      16px
      0
      0;

    border-left: 0;

    border-top:
      1px solid
      rgba(255, 255, 255, 0.12);
  }

}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-linkedin {
    padding:
      58px
      18px
      66px;
  }

  .ivk-linkedin-header {
    gap: 14px;

    margin-bottom: 34px;
  }

  .ivk-linkedin-header-number {
    width: 46px;
    height: 46px;

    flex-basis: 46px;

    border-radius: 13px;
  }

  .ivk-linkedin-header h2 {
    font-size: 31px;
  }

  .ivk-linkedin-header p {
    font-size: 14px;
  }


  /* één kolom */

  .ivk-linkedin-grid {
    grid-template-columns: 1fr;

    gap: 18px;
  }


  /* netwerk header */

  .ivk-network-head {
    display: block;

    padding:
      21px
      20px
      0;
  }

  .ivk-network-hint {
    margin-top: 8px;
  }


  /* netwerk grid */

  .ivk-network-visual {
    min-height: 0;

    display: grid;

    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 10px;

    padding:
      28px
      18px
      22px;
  }

  .ivk-network-lines,
  .ivk-network-orbit,
  .ivk-network-glow {
    display: none;
  }


  /* jij */

  .ivk-network-you {
    position: relative;

    left: auto;
    top: auto;

    grid-column: 1 / -1;

    transform: none;

    margin-bottom: 8px;
  }

  .ivk-network-you-ring {
    width: 92px;
    height: 92px;
  }


  /* nodes */

  .ivk-network-node,
  .ivk-network-node-students,
  .ivk-network-node-teachers,
  .ivk-network-node-alumni,
  .ivk-network-node-speakers,
  .ivk-network-node-companies,
  .ivk-network-node-supervisors {

    position: relative;

    left: auto;
    right: auto;
    top: auto;
    bottom: auto;

    width: 100%;

    min-height: 86px;

    display: flex;
    flex-direction: row;
    justify-content: flex-start;

    gap: 11px;

    padding: 13px;

    border: 1px solid #E0E8ED;

    border-radius: 14px;

    background: #FFFFFF;

    box-shadow:
      0 8px 19px rgba(5, 29, 61, 0.045);

    animation: none;
  }

  .ivk-network-node-icon {
    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    border-width: 3px;
  }

  .ivk-network-node-label {
    justify-content: flex-start;

    padding: 0;

    border: 0;

    background: transparent;

    box-shadow: none;

    font-size: 12px;

    text-align: left;
  }


  /* antwoorden */

  .ivk-network-panel {
    padding:
      23px
      20px
      25px;
  }

  .ivk-network-panel h4 {
    font-size: 17px;
  }

  .ivk-network-panel p {
    font-size: 13.5px;
  }


  /* story */

  .ivk-linkedin-story {
    grid-template-columns:
      62px
      1fr;

    padding:
      22px
      20px;
  }

  .ivk-linkedin-story-marker {
    width: 58px;
    height: 58px;
  }

  .ivk-linkedin-story-message {
    grid-column: 1 / -1;

    padding-top: 15px;
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 480px) {

  .ivk-linkedin {
    padding:
      52px
      17px
      60px;
  }

  .ivk-linkedin-header {
    display: block;
  }

  .ivk-linkedin-header-number {
    margin-bottom: 13px;
  }

  .ivk-linkedin-header h2 {
    font-size: 29px;
  }

  .ivk-network-visual {
    grid-template-columns: 1fr;
  }

  .ivk-network-you {
    grid-column: 1;
  }

  .ivk-network-node,
  .ivk-network-node-students,
  .ivk-network-node-teachers,
  .ivk-network-node-alumni,
  .ivk-network-node-speakers,
  .ivk-network-node-companies,
  .ivk-network-node-supervisors {
    min-height: 74px;
  }


  /* profiel */

  .ivk-profile-part summary {
    grid-template-columns:
      30px
      minmax(0, 1fr)
      27px;

    padding:
      13px
      14px;
  }

  .ivk-profile-part-title {
    font-size: 12.5px;
  }

  .ivk-profile-part-preview {
    font-size: 10px;
  }

  .ivk-profile-part-content {
    padding:
      0
      14px
      17px
      55px;
  }

  .ivk-profile-part-content p {
    font-size: 12.5px;
  }


  /* story */

  .ivk-linkedin-story {
    display: block;
  }

  .ivk-linkedin-story-marker {
    margin-bottom: 15px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ivk-network-orbit-two,
  .ivk-network-you-ring,
  .ivk-network-node,
  .ivk-network-hint-dot,
  .ivk-network-panel,
  .ivk-profile-part-content {
    animation: none;
  }

  .ivk-network-node-icon,
  .ivk-network-line,
  .ivk-profile-part-plus::before,
  .ivk-profile-part-plus::after,
  .ivk-linkedin-button {
    transition: none;
  }

}


/* =========================================================
   ELEMENTOR FULL WIDTH
   ========================================================= */

.elementor-widget-html:has(.ivk-linkedin),
.elementor-widget-html:has(.ivk-linkedin)
> .elementor-widget-container,
.elementor-section:has(.ivk-linkedin),
.elementor-container:has(.ivk-linkedin),
.e-con:has(.ivk-linkedin) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/* =========================================================
   IVK — INTERACTIE HINTS
   ========================================================= */

.ivk-interaction-hint {
  display: flex;
  align-items: center;

  gap: 14px;

  margin:
    0
    0
    24px;

  padding:
    14px
    17px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 13px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.065),
      rgba(6, 175, 204, 0.025)
    );
}

.ivk-interaction-hint-icon {
  width: 38px;
  height: 38px;

  flex: 0 0 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #06AFCC;

  color: #FFFFFF;

  font-size: 17px;
  line-height: 1;
}

.ivk-interaction-hint-copy {
  min-width: 0;
}

.ivk-interaction-hint-title {
  display: block;

  margin-bottom: 2px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-interaction-hint-text {
  display: block;

  font-size: 11.5px;
  line-height: 1.55;

  color: #607485;
}


/* =========================================================
   KLEINE CTA IN KLIKBARE ELEMENTEN
   ========================================================= */

.ivk-click-cta {
  display: inline-flex;
  align-items: center;

  gap: 6px;

  margin-top: 9px;

  font-size: 10.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06AFCC;

  transition:
    gap .2s ease,
    transform .2s ease;
}

.ivk-click-cta::after {
  content: "→";

  font-size: 12px;
}

label:hover .ivk-click-cta,
button:hover .ivk-click-cta,
a:hover .ivk-click-cta {
  gap: 9px;
}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-interaction-hint {
    align-items: flex-start;

    gap: 11px;

    padding:
      13px
      14px;

    margin-bottom: 19px;
  }

  .ivk-interaction-hint-icon {
    width: 34px;
    height: 34px;

    flex-basis: 34px;

    font-size: 15px;
  }

  .ivk-interaction-hint-title {
    font-size: 12px;
  }

  .ivk-interaction-hint-text {
    font-size: 11px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-60e00b5 *//* =========================================================
   IVK STUDENTENGIDS
   03 — CV
   ========================================================= */

.ivk-cvguide,
.ivk-cvguide * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}


/* =========================================================
   BASIS
   ========================================================= */

.ivk-cvguide {
  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 84px 24px 92px;

  overflow: hidden;

  background: #F7FAFC;

  scroll-margin-top: 90px;
}

.ivk-cvguide-container {
  width: 100%;
  max-width: 1180px;

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.ivk-cvguide-header {
  display: flex;
  align-items: flex-start;

  gap: 21px;

  max-width: 1000px;

  margin-bottom: 45px;
}

.ivk-cvguide-number {
  width: 56px;
  height: 56px;

  flex: 0 0 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 17px;

  background:
    linear-gradient(
      145deg,
      rgba(6, 175, 204, 0.13),
      rgba(6, 175, 204, 0.055)
    );

  box-shadow:
    0 9px 24px rgba(6, 175, 204, 0.09),
    inset 0 0 0 1px rgba(6, 175, 204, 0.07);

  color: #06AFCC;

  font-size: 15px;
  line-height: 1;

  font-weight: 700;
}

.ivk-cvguide-eyebrow {
  display: block;

  margin: 1px 0 5px;

  font-size: 10px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-cvguide-header h2 {
  margin: 0 0 9px;

  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -0.025em;

  color: #06428A;
}

.ivk-cvguide-header p {
  max-width: 830px;

  margin: 0;

  font-size: 15px;
  line-height: 1.72;

  color: #53667C;
}


/* =========================================================
   VERBORGEN CONTROLS
   GEEN SCROLL JUMP
   ========================================================= */

.ivk-cvguide-control {
  position: fixed;

  top: 50%;
  left: 50%;

  width: 1px;
  height: 1px;

  margin: 0;
  padding: 0;

  border: 0;

  opacity: 0;

  clip: rect(0 0 0 0);
  clip-path: inset(50%);

  overflow: hidden;

  pointer-events: none;
}


/* =========================================================
   WORKSPACE
   ========================================================= */

.ivk-cvguide-workspace {
  position: relative;

  overflow: hidden;

  border: 1px solid #DFE8ED;

  border-radius: 25px;

  background: #FFFFFF;

  box-shadow:
    0 22px 55px rgba(5, 29, 61, 0.07),
    0 3px 10px rgba(5, 29, 61, 0.025);
}


/* =========================================================
   WORKSPACE HEADER
   ========================================================= */

.ivk-cvguide-workspace-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 25px;

  padding: 27px 30px 0;
}

.ivk-cvguide-workspace-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-cvguide-workspace-head h3 {
  margin: 0;

  font-size: 20px;
  line-height: 1.45;

  font-weight: 600;

  color: #051D3D;
}

.ivk-cvguide-workspace-hint {
  display: flex;
  align-items: center;

  gap: 8px;

  flex: 0 0 auto;

  padding-bottom: 3px;

  font-size: 11px;
  line-height: 1.4;

  color: #8393A1;
}

.ivk-cvguide-workspace-hint > span {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #06AFCC;

  box-shadow:
    0 0 0 5px rgba(6, 175, 204, 0.09);

  animation:
    ivkCvHintPulse
    2.6s
    ease-in-out
    infinite;
}

@keyframes ivkCvHintPulse {

  0%,
  100% {
    box-shadow:
      0 0 0 4px
      rgba(6, 175, 204, 0.07);
  }

  50% {
    box-shadow:
      0 0 0 8px
      rgba(6, 175, 204, 0.02);
  }

}


/* =========================================================
   VISUAL
   ========================================================= */

.ivk-cvguide-visual {
  position: relative;

  min-height: 760px;

  overflow: hidden;

  margin-top: 7px;

  background:
    radial-gradient(
      circle at 12% 20%,
      rgba(6, 175, 204, 0.04),
      transparent 27%
    ),
    radial-gradient(
      circle at 90% 70%,
      rgba(6, 66, 138, 0.03),
      transparent 28%
    ),
    linear-gradient(
      180deg,
      #FFFFFF 0%,
      #FBFDFE 100%
    );
}


/* =========================================================
   DECORATIE
   ========================================================= */

.ivk-cvguide-decoration {
  position: absolute;

  border-radius: 50%;

  pointer-events: none;
}

.ivk-cvguide-decoration-one {
  width: 230px;
  height: 230px;

  left: -90px;
  top: 120px;

  border:
    1px solid
    rgba(6, 175, 204, 0.10);
}

.ivk-cvguide-decoration-two {
  width: 170px;
  height: 170px;

  right: -70px;
  bottom: 60px;

  background:
    rgba(6, 175, 204, 0.025);
}

.ivk-cvguide-dotgrid {
  position: absolute;

  width: 88px;
  height: 88px;

  opacity: 0.3;

  background-image:
    radial-gradient(
      #06AFCC 1.25px,
      transparent 1.25px
    );

  background-size: 12px 12px;

  pointer-events: none;
}

.ivk-cvguide-dotgrid-one {
  left: 42px;
  top: 55px;
}

.ivk-cvguide-dotgrid-two {
  right: 45px;
  bottom: 45px;
}


/* =========================================================
   CV PAPIER
   ========================================================= */

.ivk-cv-paper {
  position: absolute;
  z-index: 3;

  left: 50%;
  top: 49%;

  width: 440px;

  min-height: 625px;

  padding: 31px 32px 28px;

  transform:
    translate(-50%, -50%)
    rotate(-0.7deg);

  border: 1px solid #E2E8EC;

  border-radius: 5px;

  background: #FFFFFF;

  box-shadow:
    0 35px 65px rgba(5, 29, 61, 0.14),
    0 8px 18px rgba(5, 29, 61, 0.06);

  animation:
    ivkCvPaperFloat
    6s
    ease-in-out
    infinite;
}

@keyframes ivkCvPaperFloat {

  0%,
  100% {
    transform:
      translate(-50%, -50%)
      rotate(-0.7deg)
      translateY(0);
  }

  50% {
    transform:
      translate(-50%, -50%)
      rotate(-0.7deg)
      translateY(-5px);
  }

}


/* =========================================================
   CV TOP
   ========================================================= */

.ivk-cv-paper-top {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  gap: 18px;

  align-items: start;

  padding: 5px;

  border-radius: 9px;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-cv-paper-person {
  display: flex;
  align-items: center;

  gap: 13px;
}

.ivk-cv-paper-photo {
  width: 52px;
  height: 52px;

  flex: 0 0 52px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    rgba(6, 175, 204, 0.09);
}

.ivk-cv-paper-photo svg {
  width: 26px;
  height: 26px;

  fill: none;

  stroke: #06AFCC;
  stroke-width: 1.5;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-cv-paper-name {
  display: block;

  margin-bottom: 3px;

  font-size: 18px;
  line-height: 1.3;

  font-weight: 600;

  color: #051D3D;
}

.ivk-cv-paper-role {
  display: block;

  max-width: 230px;

  font-size: 10px;
  line-height: 1.5;

  color: #53667C;
}

.ivk-cv-paper-contact {
  padding-top: 2px;

  text-align: right;

  font-size: 8.5px;
  line-height: 1.65;

  color: #7A8B99;
}


/* =========================================================
   VACATURE-INHOUD
   ========================================================= */

.ivk-cv-track-safety-content,
.ivk-cv-track-cyber-content {
  transition:
    opacity 0.22s ease;
}

.ivk-cv-track-cyber-content {
  display: none;
}

#ivk-cvguide-track-safety:checked
~ .ivk-cvguide-workspace
.ivk-cv-track-safety-content {
  display: block;
}

#ivk-cvguide-track-safety:checked
~ .ivk-cvguide-workspace
.ivk-cv-track-cyber-content {
  display: none;
}

#ivk-cvguide-track-cyber:checked
~ .ivk-cvguide-workspace
.ivk-cv-track-safety-content {
  display: none;
}

#ivk-cvguide-track-cyber:checked
~ .ivk-cvguide-workspace
.ivk-cv-track-cyber-content {
  display: block;
}


/* =========================================================
   KEYWORDS
   ========================================================= */

.ivk-cv-paper-keywords {
  margin: 20px 0 18px;

  padding: 7px;

  border-radius: 9px;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-cv-paper-keywords > div {
  display: flex;

  flex-wrap: wrap;

  gap: 6px;
}

.ivk-cv-paper-keywords span {
  display: inline-flex;

  padding:
    5px
    8px;

  border-radius: 999px;

  background:
    rgba(6, 175, 204, 0.075);

  font-size: 8.5px;
  line-height: 1.2;

  color: #28768A;
}


/* =========================================================
   CV SECTIES
   ========================================================= */

.ivk-cv-paper-section {
  margin-top: 17px;

  padding: 7px;

  border-radius: 9px;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-cv-paper-section-label {
  display: block;

  margin-bottom: 7px;

  font-size: 8px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-cv-paper-section > p {
  margin: 0;

  font-size: 9.5px;
  line-height: 1.7;

  color: #53667C;
}


/* =========================================================
   CV ENTRIES
   ========================================================= */

.ivk-cv-paper-entry {
  margin-bottom: 11px;
}

.ivk-cv-paper-entry:last-child {
  margin-bottom: 0;
}

.ivk-cv-paper-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;

  gap: 15px;

  margin-bottom: 3px;
}

.ivk-cv-paper-entry-head > span {
  font-size: 9.5px;
  line-height: 1.45;

  font-weight: 500;

  color: #06428A;
}

.ivk-cv-paper-entry-head small {
  flex: 0 0 auto;

  font-size: 7.5px;
  line-height: 1.4;

  color: #8795A1;
}

.ivk-cv-paper-entry p {
  margin: 0;

  font-size: 8.8px;
  line-height: 1.65;

  color: #667989;
}


/* =========================================================
   PROJECTS
   ========================================================= */

.ivk-cv-paper-projects {
  display: flex;
  flex-wrap: wrap;

  gap: 6px;
}

.ivk-cv-paper-projects span {
  padding: 5px 7px;

  border-radius: 6px;

  background: #F5F8FA;

  font-size: 8px;
  line-height: 1.3;

  color: #607384;
}


/* =========================================================
   CHECKLINE
   ========================================================= */

.ivk-cv-paper-checkline {
  display: flex;
  flex-wrap: wrap;

  gap: 7px;

  margin-top: 20px;

  padding: 8px;

  border-radius: 9px;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-cv-paper-checkline span {
  position: relative;

  padding-left: 11px;

  font-size: 7.5px;
  line-height: 1.4;

  color: #718290;
}

.ivk-cv-paper-checkline span::before {
  content: "";

  position: absolute;

  left: 0;
  top: 4px;

  width: 5px;
  height: 5px;

  border-radius: 50%;

  background: #06AFCC;
}


/* =========================================================
   HOTSPOTS
   ========================================================= */

.ivk-cv-hotspot {
  position: absolute;
  z-index: 5;

  display: grid;

  grid-template-columns:
    39px
    minmax(0, 1fr);

  gap: 10px;

  align-items: center;

  width: 205px;

  padding: 12px 13px;

  border: 1px solid #DFE8ED;

  border-radius: 13px;

  background:
    rgba(255, 255, 255, 0.96);

  box-shadow:
    0 14px 30px rgba(5, 29, 61, 0.08);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  cursor: pointer;

  transition:
    transform 0.25s ease,
    border-color 0.25s ease,
    box-shadow 0.25s ease;

  user-select: none;
}

.ivk-cv-hotspot:hover {
  transform: translateY(-3px);

  border-color:
    rgba(6, 175, 204, 0.32);

  box-shadow:
    0 19px 36px rgba(5, 29, 61, 0.105);
}

.ivk-cv-hotspot-number {
  width: 39px;
  height: 39px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 11px;

  background: #051D3D;

  font-size: 10px;
  line-height: 1;

  font-weight: 600;

  color: #FFFFFF;

  transition:
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.ivk-cv-hotspot-title {
  display: block;

  margin-bottom: 2px;

  font-size: 12px;
  line-height: 1.4;

  font-weight: 500;

  color: #06428A;
}

.ivk-cv-hotspot-text {
  display: block;

  font-size: 9.5px;
  line-height: 1.5;

  color: #748695;
}


/* posities */

.ivk-cv-hotspot-one {
  left: 5%;
  top: 13%;
}

.ivk-cv-hotspot-two {
  right: 5%;
  top: 25%;
}

.ivk-cv-hotspot-three {
  left: 4%;
  top: 53%;
}

.ivk-cv-hotspot-four {
  right: 4%;
  top: 59%;
}

.ivk-cv-hotspot-five {
  left: 8%;
  bottom: 8%;
}


/* =========================================================
   ACTIEVE HOTSPOTS
   ========================================================= */

#ivk-cvguide-top:checked
~ .ivk-cvguide-workspace
.ivk-cv-hotspot-one
.ivk-cv-hotspot-number,

#ivk-cvguide-profile:checked
~ .ivk-cvguide-workspace
.ivk-cv-hotspot-two
.ivk-cv-hotspot-number,

#ivk-cvguide-experience:checked
~ .ivk-cvguide-workspace
.ivk-cv-hotspot-three
.ivk-cv-hotspot-number,

#ivk-cvguide-tailor:checked
~ .ivk-cvguide-workspace
.ivk-cv-hotspot-four
.ivk-cv-hotspot-number,

#ivk-cvguide-check:checked
~ .ivk-cvguide-workspace
.ivk-cv-hotspot-five
.ivk-cv-hotspot-number {
  background: #06AFCC;

  box-shadow:
    0 0 0 6px rgba(6, 175, 204, 0.08);
}


/* =========================================================
   OPLETTENDE CV DELEN
   ========================================================= */

#ivk-cvguide-top:checked
~ .ivk-cvguide-workspace
.ivk-cv-highlight-top,

#ivk-cvguide-profile:checked
~ .ivk-cvguide-workspace
.ivk-cv-highlight-profile,

#ivk-cvguide-experience:checked
~ .ivk-cvguide-workspace
.ivk-cv-highlight-experience,

#ivk-cvguide-tailor:checked
~ .ivk-cvguide-workspace
.ivk-cv-highlight-tailor,

#ivk-cvguide-check:checked
~ .ivk-cvguide-workspace
.ivk-cv-highlight-check {
  background:
    rgba(6, 175, 204, 0.06);

  box-shadow:
    0 0 0 2px rgba(6, 175, 204, 0.16);
}


/* =========================================================
   SWITCH
   ========================================================= */

.ivk-cv-switch {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;

  margin:
    0
    30px
    29px;

  padding: 18px 20px;

  border: 1px solid #E0E8ED;

  border-radius: 15px;

  background: #F7FAFC;
}

.ivk-cv-switch-label {
  display: block;

  margin-bottom: 3px;

  font-size: 8.5px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-cv-switch-copy p {
  margin: 0;

  font-size: 11.5px;
  line-height: 1.5;

  color: #687B8B;
}

.ivk-cv-switch-buttons {
  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 5px;

  flex: 0 0 330px;

  padding: 5px;

  border-radius: 11px;

  background: #FFFFFF;

  box-shadow:
    inset 0 0 0 1px #E0E8ED;
}

.ivk-cv-switch-button {
  min-height: 39px;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0 13px;

  border-radius: 8px;

  font-size: 10.5px;
  line-height: 1.3;

  color: #687B8B;

  cursor: pointer;

  transition:
    background 0.22s ease,
    color 0.22s ease,
    box-shadow 0.22s ease;
}

#ivk-cvguide-track-safety:checked
~ .ivk-cvguide-workspace
.ivk-cv-switch-safety,

#ivk-cvguide-track-cyber:checked
~ .ivk-cvguide-workspace
.ivk-cv-switch-cyber {
  background: #051D3D;

  box-shadow:
    0 7px 17px rgba(5, 29, 61, 0.11);

  color: #FFFFFF;
}


/* =========================================================
   PANELEN
   ========================================================= */

.ivk-cvguide-panels {
  border-top: 1px solid #E5ECEF;

  background: #FFFFFF;
}

.ivk-cvguide-panel {
  display: none;

  padding: 31px 35px 35px;

  animation:
    ivkCvPanelOpen
    0.3s
    ease both;
}

@keyframes ivkCvPanelOpen {

  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}

#ivk-cvguide-top:checked
~ .ivk-cvguide-workspace
.ivk-cvguide-panel-top,

#ivk-cvguide-profile:checked
~ .ivk-cvguide-workspace
.ivk-cvguide-panel-profile,

#ivk-cvguide-experience:checked
~ .ivk-cvguide-workspace
.ivk-cvguide-panel-experience,

#ivk-cvguide-tailor:checked
~ .ivk-cvguide-workspace
.ivk-cvguide-panel-tailor,

#ivk-cvguide-check:checked
~ .ivk-cvguide-workspace
.ivk-cvguide-panel-check {
  display: block;
}


/* =========================================================
   PANEL HEADER
   ========================================================= */

.ivk-cvguide-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 25px;

  margin-bottom: 20px;
}

.ivk-cvguide-panel-kicker {
  display: block;

  margin-bottom: 5px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-cvguide-panel-head h3 {
  max-width: 800px;

  margin: 0;

  font-size: 23px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-cvguide-close {
  width: 34px;
  height: 34px;

  flex: 0 0 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid #DFE7EC;

  border-radius: 50%;

  font-size: 20px;
  line-height: 1;

  color: #748695;

  cursor: pointer;

  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

.ivk-cvguide-close:hover {
  border-color: #06AFCC;

  color: #06AFCC;

  transform: rotate(6deg);
}


/* =========================================================
   PANEL GRID
   ========================================================= */

.ivk-cvguide-panel-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.55fr)
    minmax(275px, 0.7fr);

  gap: 40px;

  align-items: start;
}

.ivk-cvguide-panel-text p {
  max-width: 760px;

  margin: 0 0 11px;

  font-size: 14px;
  line-height: 1.76;

  color: #53667C;
}

.ivk-cvguide-panel-text p:last-child {
  margin-bottom: 0;
}


/* =========================================================
   VOORBEELDEN
   ========================================================= */

.ivk-cvguide-example {
  padding: 19px;

  border: 1px solid #DFE8ED;

  border-radius: 14px;

  background:
    linear-gradient(
      145deg,
      #FBFDFE,
      #F5FAFC
    );

  box-shadow:
    0 10px 24px rgba(5, 29, 61, 0.035);
}

.ivk-cvguide-example-label {
  display: block;

  margin-bottom: 8px;

  font-size: 8.5px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-cvguide-example > p,
.ivk-cvguide-compare p {
  margin: 0;

  font-size: 12.5px;
  line-height: 1.7;

  color: #53667C;
}

.ivk-cvguide-example-note {
  display: block;

  margin-top: 10px;

  padding-top: 10px;

  border-top: 1px solid #E3EAEE;

  font-size: 10.5px;
  line-height: 1.55;

  color: #7A8B98;
}


/* stack voorbeelden */

.ivk-cvguide-example-stack {
  display: flex;
  flex-direction: column;

  gap: 6px;
}

.ivk-cvguide-example-stack
.ivk-cvguide-example-label {
  margin-bottom: 5px;
}

.ivk-cvguide-example-stack > span:not(.ivk-cvguide-example-label) {
  padding:
    8px
    10px;

  border-left:
    2px solid
    rgba(6, 175, 204, 0.35);

  background: #FFFFFF;

  font-size: 11.5px;
  line-height: 1.45;

  color: #53667C;
}


/* vergelijking */

.ivk-cvguide-compare {
  display: grid;

  grid-template-columns:
    1fr
    auto
    1fr;

  gap: 12px;

  align-items: center;
}

.ivk-cvguide-compare-arrow {
  font-size: 18px;

  color: #06AFCC;
}


/* =========================================================
   CHECKLIST
   ========================================================= */

.ivk-cvguide-checklist {
  display: grid;

  grid-template-columns:
    1fr
    1fr;

  gap: 8px;
}

.ivk-cvguide-checklist span {
  position: relative;

  padding:
    10px
    10px
    10px
    27px;

  border: 1px solid #E1E9ED;

  border-radius: 9px;

  background: #FBFDFE;

  font-size: 10.5px;
  line-height: 1.4;

  color: #53667C;
}

.ivk-cvguide-checklist span::before {
  content: "✓";

  position: absolute;

  left: 10px;
  top: 9px;

  color: #06AFCC;
}


/* =========================================================
   PRIVACYSTRIP
   ========================================================= */

.ivk-cv-privacy-strip {
  display: grid;

  grid-template-columns:
    auto
    minmax(0, 1fr);

  gap: 15px;

  align-items: center;

  margin-top: 20px;

  padding:
    18px
    21px;

  border-radius: 15px;

  background: #051D3D;

  box-shadow:
    0 14px 32px rgba(5, 29, 61, 0.11);
}

.ivk-cv-privacy-icon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 11px;

  background:
    rgba(6, 175, 204, 0.12);
}

.ivk-cv-privacy-icon svg {
  width: 21px;
  height: 21px;

  fill: none;

  stroke: #06AFCC;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-cv-privacy-label {
  display: block;

  margin-bottom: 3px;

  font-size: 8.5px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-cv-privacy-strip p {
  max-width: 940px;

  margin: 0;

  font-size: 12.5px;
  line-height: 1.65;

  color:
    rgba(255, 255, 255, 0.79);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 960px) {

  .ivk-cvguide {
    padding:
      70px
      22px
      78px;
  }

  .ivk-cvguide-visual {
    min-height: 720px;
  }

  .ivk-cv-paper {
    width: 410px;
  }

  .ivk-cv-hotspot {
    width: 180px;
  }

  .ivk-cv-hotspot-one,
  .ivk-cv-hotspot-three,
  .ivk-cv-hotspot-five {
    left: 2.5%;
  }

  .ivk-cv-hotspot-two,
  .ivk-cv-hotspot-four {
    right: 2.5%;
  }

}


/* =========================================================
   MOBIEL / KLEINE TABLET
   ========================================================= */

@media (max-width: 760px) {

  .ivk-cvguide {
    padding:
      58px
      18px
      66px;
  }


  /* header */

  .ivk-cvguide-header {
    gap: 14px;

    margin-bottom: 34px;
  }

  .ivk-cvguide-number {
    width: 46px;
    height: 46px;

    flex-basis: 46px;

    border-radius: 13px;
  }

  .ivk-cvguide-header h2 {
    font-size: 31px;
  }

  .ivk-cvguide-header p {
    font-size: 14px;
  }


  /* workspace */

  .ivk-cvguide-workspace {
    border-radius: 18px;
  }

  .ivk-cvguide-workspace-head {
    display: block;

    padding:
      22px
      20px
      0;
  }

  .ivk-cvguide-workspace-hint {
    margin-top: 8px;
  }


  /* visual */

  .ivk-cvguide-visual {
    min-height: auto;

    display: flex;
    flex-direction: column;

    gap: 10px;

    padding:
      27px
      18px
      24px;
  }

  .ivk-cvguide-decoration,
  .ivk-cvguide-dotgrid {
    display: none;
  }


  /* papier niet absoluut */

  .ivk-cv-paper {
    position: relative;

    left: auto;
    top: auto;

    order: 1;

    width: min(100%, 470px);

    min-height: 0;

    margin:
      0 auto
      16px;

    padding: 25px;

    transform: none;

    animation: none;
  }


  /* hotspots grid */

  .ivk-cv-hotspot,
  .ivk-cv-hotspot-one,
  .ivk-cv-hotspot-two,
  .ivk-cv-hotspot-three,
  .ivk-cv-hotspot-four,
  .ivk-cv-hotspot-five {

    position: relative;

    left: auto;
    right: auto;
    top: auto;
    bottom: auto;

    order: 2;

    width: 100%;

    transform: none;
  }

  .ivk-cv-hotspot:hover {
    transform: translateY(-2px);
  }


  /* switch */

  .ivk-cv-switch {
    display: block;

    margin:
      0
      18px
      22px;
  }

  .ivk-cv-switch-buttons {
    width: 100%;

    margin-top: 13px;

    grid-template-columns: 1fr 1fr;

    flex: none;
  }


  /* panel */

  .ivk-cvguide-panel {
    padding:
      25px
      20px
      27px;
  }

  .ivk-cvguide-panel-head h3 {
    font-size: 20px;
  }

  .ivk-cvguide-panel-grid {
    grid-template-columns: 1fr;

    gap: 20px;
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 480px) {

  .ivk-cvguide {
    padding:
      52px
      17px
      60px;
  }

  .ivk-cvguide-header {
    display: block;
  }

  .ivk-cvguide-number {
    margin-bottom: 13px;
  }

  .ivk-cvguide-header h2 {
    font-size: 29px;
  }


  /* CV */

  .ivk-cv-paper {
    padding:
      21px
      18px;
  }

  .ivk-cv-paper-top {
    grid-template-columns: 1fr;
  }

  .ivk-cv-paper-contact {
    text-align: left;

    padding-left: 65px;
  }

  .ivk-cv-paper-role {
    max-width: 200px;
  }


  /* switch */

  .ivk-cv-switch-buttons {
    grid-template-columns: 1fr;
  }


  /* compare */

  .ivk-cvguide-compare {
    grid-template-columns: 1fr;

    gap: 9px;
  }

  .ivk-cvguide-compare-arrow {
    transform: rotate(90deg);

    text-align: center;
  }


  /* checklist */

  .ivk-cvguide-checklist {
    grid-template-columns: 1fr;
  }


  /* privacy */

  .ivk-cv-privacy-strip {
    align-items: start;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ivk-cv-paper,
  .ivk-cvguide-workspace-hint > span,
  .ivk-cvguide-panel {
    animation: none;
  }

  .ivk-cv-hotspot,
  .ivk-cv-hotspot-number,
  .ivk-cv-switch-button,
  .ivk-cv-highlight-top,
  .ivk-cv-highlight-profile,
  .ivk-cv-highlight-experience,
  .ivk-cv-highlight-tailor,
  .ivk-cv-highlight-check {
    transition: none;
  }

}


/* =========================================================
   ELEMENTOR FULL WIDTH
   ========================================================= */

.elementor-widget-html:has(.ivk-cvguide),
.elementor-widget-html:has(.ivk-cvguide)
> .elementor-widget-container,
.elementor-section:has(.ivk-cvguide),
.elementor-container:has(.ivk-cvguide),
.e-con:has(.ivk-cvguide) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* =========================================================
   03 CV — LEESBAARHEID INTERACTIEF CV VERGROTEN
   Plaats helemaal onderaan de bestaande CSS
   ========================================================= */


/* =========================================================
   BOVENKANT "BOUW JE CV OP"
   ========================================================= */

.ivk-cvguide-workspace-kicker {
  font-size: 10px;
}

.ivk-cvguide-workspace-head h3 {
  font-size: 22px;
}

.ivk-cvguide-workspace-hint {
  font-size: 12px;
}


/* =========================================================
   CV — NAAM / FUNCTIE / CONTACT
   ========================================================= */

.ivk-cv-paper-name {
  font-size: 20px;
}

.ivk-cv-paper-role {
  max-width: 250px;

  font-size: 11.5px;
  line-height: 1.55;
}

.ivk-cv-paper-contact {
  font-size: 10px;
  line-height: 1.65;
}


/* =========================================================
   CV — KEYWORDS
   ========================================================= */

.ivk-cv-paper-keywords span {
  padding: 6px 9px;

  font-size: 10px;
  line-height: 1.3;
}


/* =========================================================
   CV — SECTIETITELS
   PROFIEL / ERVARING / OPLEIDING / PROJECTEN
   ========================================================= */

.ivk-cv-paper-section-label {
  font-size: 9.5px;
  line-height: 1.4;
}


/* =========================================================
   CV — PROFIELTEKST
   ========================================================= */

.ivk-cv-paper-section > p {
  font-size: 11px;
  line-height: 1.7;
}


/* =========================================================
   CV — ERVARING EN OPLEIDING
   ========================================================= */

.ivk-cv-paper-entry-head > span {
  font-size: 11px;
  line-height: 1.45;
}

.ivk-cv-paper-entry-head small {
  font-size: 9px;
  line-height: 1.4;
}

.ivk-cv-paper-entry p {
  font-size: 10.5px;
  line-height: 1.65;
}


/* =========================================================
   CV — PROJECTEN & VAARDIGHEDEN
   ========================================================= */

.ivk-cv-paper-projects span {
  padding: 6px 8px;

  font-size: 9.5px;
  line-height: 1.35;
}


/* =========================================================
   CV — ONDERSTE PUNTEN
   1–2 PAGINA'S / RUSTIGE OPMAAK / SPELLING
   ========================================================= */

.ivk-cv-paper-checkline {
  gap: 9px;

  margin-top: 21px;

  padding: 10px;
}

.ivk-cv-paper-checkline span {
  padding-left: 14px;

  font-size: 10px;
  line-height: 1.45;

  color: #607384;
}

.ivk-cv-paper-checkline span::before {
  top: 5px;

  width: 6px;
  height: 6px;
}


/* =========================================================
   HOTSPOTS RONDOM HET CV
   ========================================================= */

.ivk-cv-hotspot {
  width: 215px;

  padding: 13px 14px;
}

.ivk-cv-hotspot-title {
  font-size: 13.5px;
  line-height: 1.4;
}

.ivk-cv-hotspot-text {
  font-size: 11px;
  line-height: 1.5;
}


/* =========================================================
   SWITCH ONDER HET CV
   ========================================================= */

.ivk-cv-switch-label {
  font-size: 9.5px;
}

.ivk-cv-switch-copy p {
  font-size: 12.5px;
  line-height: 1.55;
}

.ivk-cv-switch-button {
  font-size: 11.5px;
}


/* =========================================================
   IETS MEER RUIMTE IN HET CV
   Door de grotere tekst
   ========================================================= */

.ivk-cv-paper {
  width: 465px;

  min-height: 650px;

  padding:
    32px
    33px
    29px;
}

.ivk-cvguide-visual {
  min-height: 790px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 960px) {

  .ivk-cv-paper {
    width: 430px;

    min-height: 650px;
  }

  .ivk-cvguide-visual {
    min-height: 770px;
  }

  .ivk-cv-hotspot {
    width: 185px;
  }

  .ivk-cv-hotspot-title {
    font-size: 12.5px;
  }

  .ivk-cv-hotspot-text {
    font-size: 10.5px;
  }

}


/* =========================================================
   MOBIEL
   Groot genoeg houden, maar niet overdreven
   ========================================================= */

@media (max-width: 760px) {

  .ivk-cv-paper {
    width: min(100%, 470px);

    min-height: 0;
  }

  .ivk-cv-paper-name {
    font-size: 19px;
  }

  .ivk-cv-paper-role {
    font-size: 11px;
  }

  .ivk-cv-paper-contact {
    font-size: 9.5px;
  }

  .ivk-cv-paper-section-label {
    font-size: 9px;
  }

  .ivk-cv-paper-section > p {
    font-size: 10.5px;
  }

  .ivk-cv-paper-entry-head > span {
    font-size: 10.5px;
  }

  .ivk-cv-paper-entry p {
    font-size: 10px;
  }

  .ivk-cv-paper-checkline span {
    font-size: 9.5px;
  }

}

/* =========================================================
   SCROLLPOSITIE NA KLIK OP CV-AANDACHTSPUNT
   ========================================================= */

.ivk-cvguide-panel {
  scroll-margin-top: 110px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-746a1e6 *//* =========================================================
   04 — SOLLICITEREN
   ========================================================= */

.ivk-appguide,
.ivk-appguide * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}

.ivk-appguide {
  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 82px 24px 88px;

  background: #FFFFFF;
  overflow: hidden;
}

.ivk-appguide-container {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}


/* HEADER */

.ivk-appguide-header {
  display: flex;
  gap: 21px;
  align-items: flex-start;

  max-width: 1020px;
  margin-bottom: 42px;
}

.ivk-appguide-number {
  width: 56px;
  height: 56px;
  flex: 0 0 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 17px;

  background: rgba(6,175,204,.08);

  box-shadow:
    0 9px 24px rgba(6,175,204,.08),
    inset 0 0 0 1px rgba(6,175,204,.07);

  color: #06AFCC;
  font-size: 15px;
  font-weight: 700;
}

.ivk-appguide-eyebrow {
  display: block;
  margin-bottom: 5px;

  font-size: 10px;
  font-weight: 600;
  letter-spacing: .12em;

  color: #06AFCC;
}

.ivk-appguide-header h2 {
  margin: 0 0 9px;

  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.12;
  letter-spacing: -.025em;

  color: #06428A;
}

.ivk-appguide-header p {
  max-width: 850px;

  margin: 0;

  font-size: 15px;
  line-height: 1.72;

  color: #53667C;
}


/* CONTROLS */

.ivk-appguide-control {
  position: fixed;

  width: 1px;
  height: 1px;

  opacity: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);

  pointer-events: none;
}


/* BOARD */

.ivk-appguide-board {
  overflow: hidden;

  border: 1px solid #DFE8ED;
  border-radius: 23px;

  background: #F8FBFC;

  box-shadow:
    0 20px 50px rgba(5,29,61,.065);
}

.ivk-appguide-board-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;

  gap: 25px;

  padding: 27px 29px 0;
}

.ivk-appguide-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 9px;
  font-weight: 600;
  letter-spacing: .11em;

  color: #06AFCC;
}

.ivk-appguide-board-head h3 {
  margin: 0;

  font-size: 21px;
  line-height: 1.45;

  color: #051D3D;
}


/* =========================================================
   DUIDELIJKE KLIK-HINT
   ========================================================= */

.ivk-appguide-hint {
  display: flex;
  align-items: center;

  gap: 10px;

  flex: 0 0 auto;

  min-width: 230px;

  padding:
    10px
    13px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.075),
      rgba(6, 175, 204, 0.025)
    );

  box-shadow:
    0 7px 18px rgba(5, 29, 61, 0.035);
}

.ivk-appguide-hint-dot {
  width: 8px;
  height: 8px;

  flex: 0 0 8px;

  border-radius: 50%;

  background: #06AFCC;

  box-shadow:
    0 0 0 5px rgba(6, 175, 204, 0.09);

  animation:
    ivkAppguideHintPulse
    2.5s
    ease-in-out
    infinite;
}

.ivk-appguide-hint-copy {
  display: block;

  min-width: 0;
}

.ivk-appguide-hint-title {
  display: block;

  margin-bottom: 1px;

  font-size: 12px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-appguide-hint-text {
  display: block;

  font-size: 10.5px;
  line-height: 1.45;

  font-weight: 400;

  color: #667A89;
}

@keyframes ivkAppguideHintPulse {

  0%,
  100% {
    box-shadow:
      0 0 0 4px
      rgba(6, 175, 204, 0.08);
  }

  50% {
    box-shadow:
      0 0 0 8px
      rgba(6, 175, 204, 0.025);
  }

}


/* FLOW */

.ivk-appguide-flow {
  position: relative;

  display: grid;
  grid-template-columns: repeat(3, 1fr);

  gap: 16px;

  padding: 31px 27px 29px;
}

.ivk-appguide-flowline {
  position: absolute;

  left: 16%;
  right: 16%;
  top: 63px;

  height: 2px;

  background: linear-gradient(
    90deg,
    rgba(6,175,204,.12),
    rgba(6,175,204,.65),
    rgba(6,175,204,.12)
  );
}


/* CARDS */

.ivk-appcard {
  position: relative;
  z-index: 2;

  min-height: 250px;

  display: flex;
  flex-direction: column;

  padding: 18px;

  border: 1px solid #E0E8ED;
  border-radius: 16px;

  background: #FFFFFF;

  box-shadow:
    0 12px 27px rgba(5,29,61,.05);

  cursor: pointer;

  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.ivk-appcard:hover {
  transform: translateY(-4px);

  border-color: rgba(6,175,204,.30);

  box-shadow:
    0 18px 34px rgba(5,29,61,.075);
}

.ivk-appcard-top {
  display: flex;
  justify-content: space-between;
  align-items: center;

  margin-bottom: 15px;
}

.ivk-appcard-top > span {
  width: 34px;
  height: 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background: rgba(6,175,204,.09);

  font-size: 9px;
  color: #06AFCC;
}

.ivk-appcard-top small {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .09em;

  color: #82929F;
}

.ivk-appcard-icon {
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 13px;

  border-radius: 13px;

  background: #051D3D;
}

.ivk-appcard-icon svg {
  width: 23px;
  height: 23px;

  fill: none;

  stroke: #06AFCC;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-appcard h4 {
  margin: 0 0 7px;

  font-size: 17px;
  line-height: 1.4;

  color: #06428A;
}

.ivk-appcard > p {
  flex-grow: 1;

  margin: 0 0 15px;

  font-size: 12.5px;
  line-height: 1.65;

  color: #637688;
}

.ivk-appcard-link {
  display: flex;
  justify-content: space-between;

  padding-top: 11px;

  border-top: 1px solid #E7EDF0;

  font-size: 11px;

  color: #536B7C;
}

.ivk-appcard-link > span {
  color: #06AFCC;
}


/* ACTIVE */

#ivk-app-before:checked ~ .ivk-appguide-board .ivk-appcard-before,
#ivk-app-during:checked ~ .ivk-appguide-board .ivk-appcard-during,
#ivk-app-after:checked ~ .ivk-appguide-board .ivk-appcard-after {
  border-color: rgba(6,175,204,.45);

  box-shadow:
    0 0 0 2px rgba(6,175,204,.07),
    0 17px 34px rgba(5,29,61,.08);
}

#ivk-app-before:checked ~ .ivk-appguide-board .ivk-appcard-before .ivk-appcard-icon,
#ivk-app-during:checked ~ .ivk-appguide-board .ivk-appcard-during .ivk-appcard-icon,
#ivk-app-after:checked ~ .ivk-appguide-board .ivk-appcard-after .ivk-appcard-icon {
  background: #06AFCC;
}

#ivk-app-before:checked ~ .ivk-appguide-board .ivk-appcard-before svg,
#ivk-app-during:checked ~ .ivk-appguide-board .ivk-appcard-during svg,
#ivk-app-after:checked ~ .ivk-appguide-board .ivk-appcard-after svg {
  stroke: #FFFFFF;
}


/* PANELEN */

.ivk-appguide-panels {
  border-top: 1px solid #E3EBEF;
  background: #FFFFFF;
}

.ivk-appguide-panel {
  display: none;

  padding: 32px 35px 36px;

  scroll-margin-top: 110px;

  animation: ivkAppOpen .25s ease both;
}

@keyframes ivkAppOpen {
  from {
    opacity: 0;
    transform: translateY(7px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#ivk-app-before:checked ~ .ivk-appguide-board .ivk-appguide-panel-before,
#ivk-app-during:checked ~ .ivk-appguide-board .ivk-appguide-panel-during,
#ivk-app-after:checked ~ .ivk-appguide-board .ivk-appguide-panel-after {
  display: block;
}

.ivk-appguide-panel-head {
  display: flex;
  justify-content: space-between;

  gap: 25px;

  margin-bottom: 20px;
}

.ivk-appguide-panel-head > div > span {
  display: block;

  margin-bottom: 5px;

  font-size: 9px;
  font-weight: 600;
  letter-spacing: .1em;

  color: #06AFCC;
}

.ivk-appguide-panel-head h3 {
  max-width: 800px;

  margin: 0;

  font-size: 23px;
  line-height: 1.4;

  color: #06428A;
}

.ivk-appguide-close {
  width: 34px;
  height: 34px;

  flex: 0 0 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid #DFE7EC;
  border-radius: 50%;

  font-size: 20px;

  color: #748695;

  cursor: pointer;
}

.ivk-appguide-panel-grid {
  display: grid;

  grid-template-columns:
    minmax(0,1.5fr)
    minmax(280px,.72fr);

  gap: 38px;
}

.ivk-appguide-copy p {
  max-width: 760px;

  margin: 0 0 12px;

  font-size: 14px;
  line-height: 1.76;

  color: #53667C;
}

.ivk-appguide-copy p:last-child {
  margin-bottom: 0;
}


/* SIDE BOXES */

.ivk-appguide-check,
.ivk-appguide-questionbox,
.ivk-appguide-follow {
  padding: 18px;

  border: 1px solid #DFE8ED;
  border-radius: 14px;

  background: #F8FBFC;
}

.ivk-appguide-side-label {
  display: block;

  margin-bottom: 10px;

  font-size: 9px;
  font-weight: 600;
  letter-spacing: .09em;

  color: #06AFCC;
}

.ivk-appguide-check > span:not(.ivk-appguide-side-label) {
  position: relative;

  display: block;

  padding: 8px 8px 8px 25px;

  border-top: 1px solid #E5EBEE;

  font-size: 11.5px;

  color: #53667C;
}

.ivk-appguide-check > span:not(.ivk-appguide-side-label)::before {
  content: "✓";

  position: absolute;
  left: 6px;

  color: #06AFCC;
}

.ivk-appguide-questionbox > p {
  margin: 0;

  padding: 8px 9px;

  border-top: 1px solid #E5EBEE;

  font-size: 11.5px;
  line-height: 1.5;

  color: #53667C;
}

.ivk-appguide-follow > div {
  padding: 10px 0;

  border-top: 1px solid #E5EBEE;
}

.ivk-appguide-follow > div > span {
  display: block;

  margin-bottom: 3px;

  font-size: 12px;

  color: #06428A;
}

.ivk-appguide-follow p {
  margin: 0;

  font-size: 11.5px;
  line-height: 1.55;

  color: #66798A;
}


/* CLOSING */

.ivk-appguide-closing {
  display: grid;
  grid-template-columns: auto 1fr;

  gap: 18px;

  align-items: center;

  margin-top: 18px;

  padding: 19px 24px;

  border-radius: 15px;

  background: #051D3D;
}

.ivk-appguide-closing > span {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .11em;

  color: #06AFCC;
}

.ivk-appguide-closing p {
  margin: 0;

  font-size: 14px;
  line-height: 1.65;

  color: #FFFFFF;
}


/* MOBILE */

@media(max-width:760px) {

  .ivk-appguide {
    padding: 58px 18px 66px;
  }

  .ivk-appguide-header {
    gap: 14px;
    margin-bottom: 34px;
  }

  .ivk-appguide-number {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
  }

  .ivk-appguide-header h2 {
    font-size: 31px;
  }

  .ivk-appguide-board-head {
    display: block;
    padding: 22px 20px 0;
  }

  .ivk-appguide-hint {
    margin-top: 8px;
  }

  .ivk-appguide-flow {
    grid-template-columns: 1fr;

    padding: 23px 18px;
  }

  .ivk-appguide-flowline {
    display: none;
  }

  .ivk-appcard {
    min-height: 0;
  }

  .ivk-appguide-panel {
    padding: 25px 20px 27px;
    scroll-margin-top: 90px;
  }

  .ivk-appguide-panel-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .ivk-appguide-panel-head h3 {
    font-size: 20px;
  }

  .ivk-appguide-copy p {
    font-size: 13.5px;
  }

  .ivk-appguide-closing {
    grid-template-columns: 1fr;
    gap: 5px;
  }

}

@media(max-width:480px) {

  .ivk-appguide-header {
    display: block;
  }

  .ivk-appguide-number {
    margin-bottom: 13px;
  }

  .ivk-appguide-header h2 {
    font-size: 29px;
  }

}


/* =========================================================
   IVK — INTERACTIE HINTS
   ========================================================= */

.ivk-interaction-hint {
  display: flex;
  align-items: center;

  gap: 14px;

  margin:
    0
    0
    24px;

  padding:
    14px
    17px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 13px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.065),
      rgba(6, 175, 204, 0.025)
    );
}

.ivk-interaction-hint-icon {
  width: 38px;
  height: 38px;

  flex: 0 0 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #06AFCC;

  color: #FFFFFF;

  font-size: 17px;
  line-height: 1;
}

.ivk-interaction-hint-copy {
  min-width: 0;
}

.ivk-interaction-hint-title {
  display: block;

  margin-bottom: 2px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-interaction-hint-text {
  display: block;

  font-size: 11.5px;
  line-height: 1.55;

  color: #607485;
}


/* =========================================================
   KLEINE CTA IN KLIKBARE ELEMENTEN
   ========================================================= */

.ivk-click-cta {
  display: inline-flex;
  align-items: center;

  gap: 6px;

  margin-top: 9px;

  font-size: 10.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06AFCC;

  transition:
    gap .2s ease,
    transform .2s ease;
}

.ivk-click-cta::after {
  content: "→";

  font-size: 12px;
}

label:hover .ivk-click-cta,
button:hover .ivk-click-cta,
a:hover .ivk-click-cta {
  gap: 9px;
}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-interaction-hint {
    align-items: flex-start;

    gap: 11px;

    padding:
      13px
      14px;

    margin-bottom: 19px;
  }

  .ivk-interaction-hint-icon {
    width: 34px;
    height: 34px;

    flex-basis: 34px;

    font-size: 15px;
  }

  .ivk-interaction-hint-title {
    font-size: 12px;
  }

  .ivk-interaction-hint-text {
    font-size: 11px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3b9227f *//* =========================================================
   05 — WERKVELD & ERVARING
   ========================================================= */

.ivk-careersearch,
.ivk-careersearch * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}


/* =========================================================
   BASIS
   ========================================================= */

.ivk-careersearch {
  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 82px 24px 88px;

  background: #F7FAFC;

  overflow: hidden;
}

.ivk-careersearch-container {
  width: 100%;
  max-width: 1180px;

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.ivk-careersearch-header {
  display: flex;
  align-items: flex-start;

  gap: 21px;

  max-width: 1030px;

  margin-bottom: 42px;
}

.ivk-careersearch-number {
  width: 56px;
  height: 56px;

  flex: 0 0 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 17px;

  background:
    rgba(6, 175, 204, 0.08);

  box-shadow:
    0 9px 24px rgba(6, 175, 204, 0.08),
    inset 0 0 0 1px rgba(6, 175, 204, 0.07);

  color: #06AFCC;

  font-size: 15px;
  font-weight: 700;
}

.ivk-careersearch-eyebrow {
  display: block;

  margin: 1px 0 5px;

  font-size: 10px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-careersearch-header h2 {
  max-width: 940px;

  margin: 0 0 9px;

  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -0.025em;

  color: #06428A;
}

.ivk-careersearch-header p {
  max-width: 850px;

  margin: 0;

  font-size: 15px;
  line-height: 1.72;

  color: #53667C;
}


/* =========================================================
   BOARD
   ========================================================= */

.ivk-careersearch-board {
  position: relative;

  overflow: hidden;

  border: 1px solid #DFE8ED;

  border-radius: 24px;

  background: #FFFFFF;

  box-shadow:
    0 20px 50px rgba(5, 29, 61, 0.065);
}


/* =========================================================
   DECORATIE
   ========================================================= */

.ivk-careersearch-orb {
  position: absolute;

  border-radius: 50%;

  pointer-events: none;
}

.ivk-careersearch-orb-one {
  width: 270px;
  height: 270px;

  right: -125px;
  top: -120px;

  border:
    1px solid
    rgba(6, 175, 204, 0.09);
}

.ivk-careersearch-orb-two {
  width: 175px;
  height: 175px;

  left: -85px;
  bottom: 70px;

  background:
    rgba(6, 175, 204, 0.025);
}


/* =========================================================
   BOARD HEADER
   ========================================================= */

.ivk-careersearch-board-head {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 25px;

  padding:
    27px
    29px
    25px;

  border-bottom:
    1px solid #E5ECEF;
}

.ivk-careersearch-board-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-careersearch-board-head h3 {
  margin: 0 0 3px;

  font-size: 21px;
  line-height: 1.45;

  font-weight: 600;

  color: #051D3D;
}

.ivk-careersearch-board-head p {
  margin: 0;

  font-size: 12.5px;
  line-height: 1.5;

  color: #708291;
}

.ivk-careersearch-board-note {
  flex: 0 0 auto;

  padding:
    8px
    11px;

  border: 1px solid #E1E9ED;

  border-radius: 999px;

  background: #F8FBFC;

  font-size: 10px;
  line-height: 1.3;

  color: #748695;
}


/* =========================================================
   MAIN GRID
   ========================================================= */

.ivk-careersearch-main {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(0, 1.65fr)
    minmax(320px, 0.75fr);

  gap: 22px;

  align-items: stretch;

  padding: 25px;
}


/* =========================================================
   BROWSER
   ========================================================= */

.ivk-careersearch-browser {
  overflow: hidden;

  border: 1px solid #DFE8ED;

  border-radius: 17px;

  background: #F8FBFC;

  box-shadow:
    0 13px 30px rgba(5, 29, 61, 0.045);
}


/* browser header */

.ivk-careersearch-browserbar {
  display: flex;
  align-items: center;

  gap: 13px;

  min-height: 43px;

  padding:
    0
    14px;

  border-bottom:
    1px solid #E3EAEE;

  background: #FFFFFF;
}

.ivk-careersearch-browserdots {
  display: flex;

  gap: 5px;
}

.ivk-careersearch-browserdots span {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #D6E1E6;
}

.ivk-careersearch-browserdots span:nth-child(2) {
  background:
    rgba(6, 175, 204, 0.28);
}

.ivk-careersearch-browserdots span:nth-child(3) {
  background:
    rgba(6, 175, 204, 0.55);
}

.ivk-careersearch-browser-title {
  font-size: 10.5px;

  color: #768895;
}


/* =========================================================
   SEARCH AREA
   ========================================================= */

.ivk-careersearch-searcharea {
  padding:
    22px
    21px
    19px;

  background:
    linear-gradient(
      145deg,
      #FBFDFE,
      #F5FAFC
    );
}

.ivk-careersearch-search-label {
  display: block;

  margin-bottom: 7px;

  font-size: 8.5px;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}


/* zoekbalk */

.ivk-careersearch-searchbox {
  display: grid;

  grid-template-columns:
    40px
    minmax(0, 1fr)
    auto;

  gap: 10px;

  align-items: center;

  min-height: 60px;

  padding:
    8px
    9px;

  border: 1px solid #D9E5EA;

  border-radius: 14px;

  background: #FFFFFF;

  box-shadow:
    0 10px 25px rgba(5, 29, 61, 0.06);
}

.ivk-careersearch-searchicon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background:
    rgba(6, 175, 204, 0.075);
}

.ivk-careersearch-searchicon svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: #06428A;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* typing */

.ivk-careersearch-typing {
  display: flex;
  align-items: center;

  min-width: 0;

  overflow: hidden;
}

.ivk-careersearch-typed {
  white-space: nowrap;

  font-size: 14px;
  line-height: 1.4;

  color: #314A60;
}

.ivk-careersearch-cursor {
  width: 1.5px;
  height: 19px;

  margin-left: 2px;

  background: #06AFCC;

  animation:
    ivkCareerCursor
    0.8s
    steps(1)
    infinite;
}

@keyframes ivkCareerCursor {

  0%,
  45% {
    opacity: 1;
  }

  46%,
  100% {
    opacity: 0;
  }

}

.ivk-careersearch-searchbutton {
  padding:
    10px
    13px;

  border-radius: 9px;

  background: #051D3D;

  font-size: 10px;
  line-height: 1;

  color: #FFFFFF;
}


/* hint */

.ivk-careersearch-sourcehint {
  display: grid;

  grid-template-columns:
    auto
    1fr;

  gap: 8px;

  align-items: center;

  margin-top: 10px;
}

.ivk-careersearch-sourcehint > span {
  padding:
    4px
    7px;

  border-radius: 999px;

  background:
    rgba(6, 175, 204, 0.09);

  font-size: 8px;

  color: #06AFCC;
}

.ivk-careersearch-sourcehint p {
  margin: 0;

  font-size: 10.5px;
  line-height: 1.5;

  color: #788A98;
}


/* =========================================================
   RESULTATEN
   ========================================================= */

.ivk-careersearch-results {
  padding:
    0
    19px
    20px;
}

.ivk-careersearch-results-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;

  gap: 15px;

  padding:
    15px
    2px
    12px;
}

.ivk-careersearch-results-head > span {
  font-size: 12.5px;
  line-height: 1.4;

  font-weight: 500;

  color: #06428A;
}

.ivk-careersearch-results-head small {
  font-size: 9px;

  color: #8A99A5;
}


/* grid */

.ivk-careersearch-results-grid {
  display: grid;

  grid-template-columns:
    1fr
    1fr;

  gap: 8px;
}


/* result */

.ivk-careersearch-result {
  display: grid;

  grid-template-columns:
    39px
    minmax(0, 1fr);

  gap: 10px;

  align-items: start;

  min-width: 0;

  padding: 12px;

  border: 1px solid #E2E9ED;

  border-radius: 11px;

  background: #FFFFFF;

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.ivk-careersearch-result:hover {
  transform: translateY(-2px);

  border-color:
    rgba(6, 175, 204, 0.25);

  box-shadow:
    0 8px 18px rgba(5, 29, 61, 0.045);
}

.ivk-careersearch-result-icon {
  width: 39px;
  height: 39px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background:
    rgba(6, 175, 204, 0.075);
}

.ivk-careersearch-result-icon svg {
  width: 19px;
  height: 19px;

  fill: none;

  stroke: #06428A;
  stroke-width: 1.6;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-careersearch-result-type {
  display: block;

  margin-bottom: 2px;

  font-size: 7.5px;
  line-height: 1.3;

  font-weight: 600;

  letter-spacing: 0.07em;

  color: #06AFCC;
}

.ivk-careersearch-result h4 {
  margin:
    0
    0
    3px;

  font-size: 11.5px;
  line-height: 1.4;

  font-weight: 500;

  color: #06428A;
}

.ivk-careersearch-result p {
  margin: 0;

  font-size: 10px;
  line-height: 1.55;

  color: #6C7E8D;
}


/* =========================================================
   VACATURE LEZEN
   ========================================================= */

.ivk-careersearch-read {
  margin-top: 10px;

  padding: 13px 14px;

  border-left:
    3px solid #06AFCC;

  border-radius:
    0
    10px
    10px
    0;

  background:
    rgba(6, 175, 204, 0.045);
}

.ivk-careersearch-read-label {
  display: block;

  margin-bottom: 7px;

  font-size: 8px;

  font-weight: 600;

  letter-spacing: 0.09em;

  color: #06AFCC;
}

.ivk-careersearch-read-items {
  display: flex;
  flex-wrap: wrap;

  gap: 6px;

  margin-bottom: 7px;
}

.ivk-careersearch-read-items span {
  padding:
    5px
    7px;

  border-radius: 6px;

  background: #FFFFFF;

  font-size: 9.5px;

  color: #53667C;
}

.ivk-careersearch-read p {
  margin: 0;

  font-size: 10.5px;
  line-height: 1.55;

  color: #6D7F8E;
}


/* =========================================================
   RECHTS — ERVARING
   ========================================================= */

.ivk-careersearch-experience {
  padding:
    21px
    20px;

  border: 1px solid #DFE8ED;

  border-radius: 17px;

  background:
    linear-gradient(
      180deg,
      #FBFDFE,
      #F7FAFC
    );

  box-shadow:
    0 13px 30px rgba(5, 29, 61, 0.04);
}

.ivk-careersearch-experience-kicker {
  display: block;

  margin-bottom: 4px;

  font-size: 8.5px;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-careersearch-experience > h3 {
  margin:
    0
    0
    6px;

  font-size: 17px;
  line-height: 1.45;

  font-weight: 600;

  color: #06428A;
}

.ivk-careersearch-experience-intro {
  margin:
    0
    0
    20px;

  font-size: 11.5px;
  line-height: 1.6;

  color: #697C8C;
}


/* =========================================================
   TIMELINE
   ========================================================= */

.ivk-careersearch-timeline {
  position: relative;

  padding-left: 2px;
}

.ivk-careersearch-timeline::before {
  content: "";

  position: absolute;

  left: 17px;
  top: 18px;
  bottom: 20px;

  width: 2px;

  background:
    linear-gradient(
      #A9DDE6,
      #06AFCC,
      #C5E8EE
    );
}

.ivk-careersearch-timeitem {
  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    34px
    minmax(0, 1fr);

  gap: 12px;

  margin-bottom: 18px;
}

.ivk-careersearch-timeitem:last-child {
  margin-bottom: 0;
}

.ivk-careersearch-timedot {
  width: 34px;
  height: 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  border:
    2px solid #B8DFE7;

  border-radius: 50%;

  background: #FFFFFF;

  box-shadow:
    0 5px 12px rgba(5, 29, 61, 0.045);

  font-size: 8px;

  font-weight: 600;

  color: #06AFCC;
}

.ivk-careersearch-timeitem small {
  display: block;

  margin-bottom: 2px;

  font-size: 7.5px;
  line-height: 1.3;

  font-weight: 600;

  letter-spacing: 0.07em;

  color: #8797A3;
}

.ivk-careersearch-timeitem h4 {
  margin:
    0
    0
    3px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 500;

  color: #06428A;
}

.ivk-careersearch-timeitem p {
  margin: 0;

  font-size: 10.5px;
  line-height: 1.58;

  color: #687B8B;
}


/* highlight */

.ivk-careersearch-timeitem-highlight > div:last-child {
  margin:
    -7px
    -7px
    -7px
    0;

  padding:
    9px
    10px;

  border: 1px solid
    rgba(6, 175, 204, 0.18);

  border-radius: 10px;

  background:
    rgba(6, 175, 204, 0.045);
}

.ivk-careersearch-timeitem-highlight
.ivk-careersearch-timedot {
  border-color: #06AFCC;

  background: #06AFCC;

  color: #FFFFFF;
}

.ivk-careersearch-time-head {
  display: flex;
  justify-content: space-between;

  gap: 7px;
}

.ivk-careersearch-time-head > span {
  padding:
    3px
    6px;

  border-radius: 999px;

  background: #06AFCC;

  font-size: 6.5px;
  line-height: 1;

  font-weight: 600;

  letter-spacing: 0.06em;

  text-transform: uppercase;

  color: #FFFFFF;
}


/* =========================================================
   ERVARING NOTE
   ========================================================= */

.ivk-careersearch-expnote {
  margin-top: 20px;

  padding: 13px;

  border-radius: 10px;

  background: #051D3D;
}

.ivk-careersearch-expnote > span {
  display: block;

  margin-bottom: 3px;

  font-size: 10.5px;

  color: #FFFFFF;
}

.ivk-careersearch-expnote p {
  margin: 0;

  font-size: 10px;
  line-height: 1.55;

  color:
    rgba(255, 255, 255, 0.7);
}


/* =========================================================
   STAGE → BAAN
   ========================================================= */

.ivk-careersearch-stage {
  display: grid;

  grid-template-columns:
    50px
    minmax(0, 1.3fr)
    minmax(280px, 0.7fr);

  gap: 20px;

  align-items: center;

  margin-top: 19px;

  padding:
    23px
    25px;

  border: 1px solid #DDE7EC;

  border-radius: 16px;

  background: #FFFFFF;

  box-shadow:
    0 11px 28px rgba(5, 29, 61, 0.045);
}

.ivk-careersearch-stage-icon {
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 13px;

  background: #051D3D;
}

.ivk-careersearch-stage-icon svg {
  width: 23px;
  height: 23px;

  fill: none;

  stroke: #06AFCC;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.ivk-careersearch-stage-label {
  display: block;

  margin-bottom: 3px;

  font-size: 8px;

  font-weight: 600;

  letter-spacing: 0.09em;

  color: #06AFCC;
}

.ivk-careersearch-stage-copy h3 {
  margin:
    0
    0
    5px;

  font-size: 17px;
  line-height: 1.45;

  color: #06428A;
}

.ivk-careersearch-stage-copy p {
  margin: 0;

  font-size: 12.5px;
  line-height: 1.68;

  color: #607485;
}


/* personal */

.ivk-careersearch-stage-personal {
  padding-left: 20px;

  border-left:
    1px solid #E1E8EC;
}

.ivk-careersearch-stage-personal > span {
  display: block;

  margin-bottom: 4px;

  font-size: 8px;

  font-weight: 600;

  letter-spacing: 0.09em;

  color: #06AFCC;
}

.ivk-careersearch-stage-personal p {
  margin: 0;

  font-size: 11.5px;
  line-height: 1.65;

  color: #617586;
}


/* =========================================================
   ONDERREGEL
   ========================================================= */

.ivk-careersearch-bottom {
  display: grid;

  grid-template-columns:
    minmax(280px, 0.8fr)
    minmax(0, 1.2fr);

  gap: 26px;

  align-items: center;

  margin-top: 13px;

  padding:
    16px
    19px;

  border-radius: 13px;

  background:
    rgba(6, 175, 204, 0.045);
}

.ivk-careersearch-bottom > div:first-child > span {
  display: block;

  margin-bottom: 3px;

  font-size: 8px;

  font-weight: 600;

  letter-spacing: 0.09em;

  color: #06AFCC;
}

.ivk-careersearch-bottom p {
  margin: 0;

  font-size: 11.5px;
  line-height: 1.6;

  color: #607485;
}

.ivk-careersearch-bottom-tags {
  display: flex;
  flex-wrap: wrap;

  gap: 6px;
}

.ivk-careersearch-bottom-tags span {
  padding:
    6px
    8px;

  border: 1px solid #E0E8EC;

  border-radius: 7px;

  background: #FFFFFF;

  font-size: 9.5px;

  color: #53667C;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 980px) {

  .ivk-careersearch {
    padding:
      70px
      22px
      78px;
  }

  .ivk-careersearch-main {
    grid-template-columns:
      minmax(0, 1.4fr)
      minmax(285px, 0.8fr);

    gap: 15px;

    padding: 18px;
  }

  .ivk-careersearch-results-grid {
    grid-template-columns: 1fr;
  }

  .ivk-careersearch-stage {
    grid-template-columns:
      48px
      1fr;
  }

  .ivk-careersearch-stage-personal {
    grid-column: 2;

    padding:
      14px
      0
      0;

    border-left: 0;

    border-top:
      1px solid #E1E8EC;
  }

}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-careersearch {
    padding:
      58px
      18px
      66px;
  }


  /* header */

  .ivk-careersearch-header {
    gap: 14px;

    margin-bottom: 34px;
  }

  .ivk-careersearch-number {
    width: 46px;
    height: 46px;

    flex-basis: 46px;

    border-radius: 13px;
  }

  .ivk-careersearch-header h2 {
    font-size: 31px;
  }

  .ivk-careersearch-header p {
    font-size: 14px;
  }


  /* board */

  .ivk-careersearch-board {
    border-radius: 18px;
  }

  .ivk-careersearch-board-head {
    display: block;

    padding:
      22px
      20px
      20px;
  }

  .ivk-careersearch-board-note {
    display: inline-block;

    margin-top: 9px;
  }


  /* main */

  .ivk-careersearch-main {
    grid-template-columns: 1fr;

    padding: 17px;
  }


  /* resultaten */

  .ivk-careersearch-results-grid {
    grid-template-columns: 1fr 1fr;
  }


  /* experience */

  .ivk-careersearch-experience {
    padding: 20px;
  }


  /* stage */

  .ivk-careersearch-stage {
    grid-template-columns:
      48px
      1fr;

    padding:
      21px
      19px;
  }


  /* bottom */

  .ivk-careersearch-bottom {
    grid-template-columns: 1fr;

    gap: 12px;
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 520px) {

  .ivk-careersearch-header {
    display: block;
  }

  .ivk-careersearch-number {
    margin-bottom: 13px;
  }

  .ivk-careersearch-header h2 {
    font-size: 29px;
  }

  .ivk-careersearch-searchbox {
    grid-template-columns:
      38px
      minmax(0, 1fr);
  }

  .ivk-careersearch-searchbutton {
    display: none;
  }

  .ivk-careersearch-typed {
    font-size: 12.5px;
  }

  .ivk-careersearch-results-grid {
    grid-template-columns: 1fr;
  }

  .ivk-careersearch-results-head {
    display: block;
  }

  .ivk-careersearch-results-head small {
    display: block;

    margin-top: 2px;
  }

  .ivk-careersearch-stage {
    display: block;
  }

  .ivk-careersearch-stage-icon {
    margin-bottom: 13px;
  }

  .ivk-careersearch-stage-personal {
    margin-top: 14px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ivk-careersearch-cursor {
    animation: none;
  }

  .ivk-careersearch-result {
    transition: none;
  }

}


/* =========================================================
   ELEMENTOR FULL WIDTH
   ========================================================= */

.elementor-widget-html:has(.ivk-careersearch),
.elementor-widget-html:has(.ivk-careersearch)
> .elementor-widget-container,
.elementor-section:has(.ivk-careersearch),
.elementor-container:has(.ivk-careersearch),
.e-con:has(.ivk-careersearch) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* =========================================================
   IVK — INTERACTIE HINTS
   ========================================================= */

.ivk-interaction-hint {
  display: flex;
  align-items: center;

  gap: 14px;

  margin:
    0
    0
    24px;

  padding:
    14px
    17px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 13px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.065),
      rgba(6, 175, 204, 0.025)
    );
}

.ivk-interaction-hint-icon {
  width: 38px;
  height: 38px;

  flex: 0 0 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #06AFCC;

  color: #FFFFFF;

  font-size: 17px;
  line-height: 1;
}

.ivk-interaction-hint-copy {
  min-width: 0;
}

.ivk-interaction-hint-title {
  display: block;

  margin-bottom: 2px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-interaction-hint-text {
  display: block;

  font-size: 11.5px;
  line-height: 1.55;

  color: #607485;
}


/* =========================================================
   KLEINE CTA IN KLIKBARE ELEMENTEN
   ========================================================= */

.ivk-click-cta {
  display: inline-flex;
  align-items: center;

  gap: 6px;

  margin-top: 9px;

  font-size: 10.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06AFCC;

  transition:
    gap .2s ease,
    transform .2s ease;
}

.ivk-click-cta::after {
  content: "→";

  font-size: 12px;
}

label:hover .ivk-click-cta,
button:hover .ivk-click-cta,
a:hover .ivk-click-cta {
  gap: 9px;
}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-interaction-hint {
    align-items: flex-start;

    gap: 11px;

    padding:
      13px
      14px;

    margin-bottom: 19px;
  }

  .ivk-interaction-hint-icon {
    width: 34px;
    height: 34px;

    flex-basis: 34px;

    font-size: 15px;
  }

  .ivk-interaction-hint-title {
    font-size: 12px;
  }

  .ivk-interaction-hint-text {
    font-size: 11px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0e00cfe *//* =========================================================
   IVK STUDENTENGIDS
   06 — RICHTING KIEZEN & SPECIALISEREN
   ========================================================= */

.ivk-routeguide,
.ivk-routeguide * {
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}


/* =========================================================
   BASIS
   ========================================================= */

.ivk-routeguide {
  width: 100vw;
  max-width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  padding: 82px 24px 92px;

  background: #FFFFFF;

  overflow: hidden;
}

.ivk-routeguide-container {
  width: 100%;
  max-width: 1180px;

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.ivk-routeguide-header {
  display: flex;
  align-items: flex-start;

  gap: 21px;

  max-width: 1030px;

  margin-bottom: 45px;
}

.ivk-routeguide-number {
  width: 56px;
  height: 56px;

  flex: 0 0 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 17px;

  background:
    rgba(6, 175, 204, 0.08);

  box-shadow:
    0 9px 24px rgba(6, 175, 204, 0.08),
    inset 0 0 0 1px rgba(6, 175, 204, 0.07);

  color: #06AFCC;

  font-size: 15px;
  line-height: 1;

  font-weight: 700;
}

.ivk-routeguide-eyebrow {
  display: block;

  margin: 1px 0 5px;

  font-size: 10px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.12em;

  color: #06AFCC;
}

.ivk-routeguide-header h2 {
  margin: 0 0 9px;

  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -0.025em;

  color: #06428A;
}

.ivk-routeguide-header p {
  max-width: 870px;

  margin: 0;

  font-size: 15px;
  line-height: 1.72;

  color: #53667C;
}


/* =========================================================
   VERBORGEN RADIO CONTROLS
   ========================================================= */

.ivk-routeguide-control {
  position: fixed;

  top: 50%;
  left: 50%;

  width: 1px;
  height: 1px;

  margin: 0;
  padding: 0;

  opacity: 0;

  clip: rect(0 0 0 0);
  clip-path: inset(50%);

  overflow: hidden;

  pointer-events: none;
}


/* =========================================================
   SELECTOR
   ========================================================= */

.ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe {
  padding:
    0
    2px
    17px;

  border-top:
    1px solid #DFE8ED;

  border-bottom:
    1px solid #DFE8ED;

  background: #FBFDFE;
}

.ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 30px;

  padding:
    27px
    2px
    20px;
}

.ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-kicker {
  display: block;

  margin-bottom: 3px;

  font-size: 8.5px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-head h3 {
  margin: 0;

  font-size: 25px;
  line-height: 1.35;

  font-weight: 600;

  letter-spacing: -0.01em;

  color: #06428A;
}

.ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-head > p {
  max-width: 350px;

  margin:
    0
    0
    3px;

  font-size: 12px;
  line-height: 1.55;

  text-align: right;

  color: #758795;
}


/* =========================================================
   DRIE KEUZES
   ========================================================= */

.ivk-routeguide-options {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 10px;
}

.ivk-routeguide-option {
  position: relative;

  display: grid;

  grid-template-columns:
    40px
    minmax(0, 1fr);

  gap: 12px;

  align-items: center;

  min-height: 88px;

  padding:
    16px
    18px;

  border:
    1px solid #E1E8EC;

  border-radius: 13px;

  overflow: hidden;

  cursor: pointer;

  user-select: none;

  transition:
    transform 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.ivk-routeguide-option::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 3px;

  transform: scaleX(0);

  transform-origin: left center;

  transition:
    transform 0.22s ease;
}


/* =========================================================
   ROUTE 01 — ONTDEKKEN
   ========================================================= */

.ivk-routeguide-option-explore {
  background:
    linear-gradient(
      135deg,
      #FFFFFF 0%,
      #F1F7FB 100%
    );

  border-color:
    rgba(84, 125, 155, 0.20);
}

.ivk-routeguide-option-explore::after {
  background: #5C86A4;
}

.ivk-routeguide-option-explore
.ivk-routeguide-option-number {
  background:
    rgba(84, 125, 155, 0.11);

  color: #547D9B;
}


/* =========================================================
   ROUTE 02 — VERDIEPEN
   ========================================================= */

.ivk-routeguide-option-deepen {
  background:
    linear-gradient(
      135deg,
      #FFFFFF 0%,
      rgba(6, 175, 204, 0.065) 100%
    );

  border-color:
    rgba(6, 175, 204, 0.24);
}

.ivk-routeguide-option-deepen::after {
  background: #06AFCC;
}

.ivk-routeguide-option-deepen
.ivk-routeguide-option-number {
  background:
    rgba(6, 175, 204, 0.11);

  color: #06AFCC;
}


/* =========================================================
   ROUTE 03 — HEROVERWEGEN
   ========================================================= */

.ivk-routeguide-option-rethink {
  background:
    linear-gradient(
      135deg,
      #FFFFFF 0%,
      #FAF7F2 100%
    );

  border-color:
    rgba(154, 132, 98, 0.19);
}

.ivk-routeguide-option-rethink::after {
  background: #9A8462;
}

.ivk-routeguide-option-rethink
.ivk-routeguide-option-number {
  background:
    rgba(154, 132, 98, 0.11);

  color: #8C7658;
}


/* =========================================================
   NUMMERS
   ========================================================= */

.ivk-routeguide-option-number {
  width: 38px;
  height: 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  font-size: 9px;
  line-height: 1;

  font-weight: 600;

  transition:
    background 0.22s ease,
    color 0.22s ease;
}


/* =========================================================
   OPTIE TEKST
   ========================================================= */

.ivk-routeguide-option small {
  display: block;

  margin-bottom: 2px;

  font-size: 7.5px;
  line-height: 1.35;

  font-weight: 600;

  letter-spacing: 0.09em;

  color: #80909C;
}

.ivk-routeguide-option > div > span {
  display: block;

  font-size: 13.5px;
  line-height: 1.45;

  font-weight: 500;

  color: #06428A;
}


/* =========================================================
   HOVER
   ========================================================= */

.ivk-routeguide-option:hover {
  transform: translateY(-2px);

  box-shadow:
    0 9px 22px rgba(5, 29, 61, 0.055);
}


/* =========================================================
   ACTIEVE KEUZE 01
   ========================================================= */

#ivk-route-explore:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-explore {
  border-color:
    rgba(84, 125, 155, 0.45);

  background:
    linear-gradient(
      135deg,
      #FFFFFF 0%,
      rgba(84, 125, 155, 0.12) 100%
    );

  box-shadow:
    0 8px 22px rgba(84, 125, 155, 0.07);
}

#ivk-route-explore:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-explore::after {
  transform: scaleX(1);
}

#ivk-route-explore:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-explore
.ivk-routeguide-option-number {
  background: #547D9B;

  color: #FFFFFF;
}


/* =========================================================
   ACTIEVE KEUZE 02
   ========================================================= */

#ivk-route-deepen:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-deepen {
  border-color:
    rgba(6, 175, 204, 0.48);

  background:
    linear-gradient(
      135deg,
      #FFFFFF 0%,
      rgba(6, 175, 204, 0.12) 100%
    );

  box-shadow:
    0 8px 22px rgba(6, 175, 204, 0.09);
}

#ivk-route-deepen:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-deepen::after {
  transform: scaleX(1);
}

#ivk-route-deepen:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-deepen
.ivk-routeguide-option-number {
  background: #06AFCC;

  color: #FFFFFF;
}


/* =========================================================
   ACTIEVE KEUZE 03
   ========================================================= */

#ivk-route-rethink:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-rethink {
  border-color:
    rgba(154, 132, 98, 0.43);

  background:
    linear-gradient(
      135deg,
      #FFFFFF 0%,
      rgba(154, 132, 98, 0.11) 100%
    );

  box-shadow:
    0 8px 22px rgba(154, 132, 98, 0.065);
}

#ivk-route-rethink:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-rethink::after {
  transform: scaleX(1);
}

#ivk-route-rethink:checked
~ .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe
.ivk-routeguide-option-rethink
.ivk-routeguide-option-number {
  background: #9A8462;

  color: #FFFFFF;
}


/* =========================================================
   CONTENT
   ========================================================= */

.ivk-routeguide-content {
  min-height: 500px;
}

.ivk-routeguide-panel {
  display: none;

  grid-template-columns:
    minmax(0, 1.55fr)
    minmax(300px, 0.72fr);

  gap: 65px;

  padding:
    44px
    3px
    48px;

  animation:
    ivkRouteGuideOpen
    0.28s
    ease both;
}

@keyframes ivkRouteGuideOpen {

  from {
    opacity: 0;
    transform: translateY(7px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}


/* panel zichtbaar */

#ivk-route-explore:checked
~ .ivk-routeguide-content
.ivk-routeguide-panel-explore,

#ivk-route-deepen:checked
~ .ivk-routeguide-content
.ivk-routeguide-panel-deepen,

#ivk-route-rethink:checked
~ .ivk-routeguide-content
.ivk-routeguide-panel-rethink {
  display: grid;
}


/* =========================================================
   PANEL MAIN
   ========================================================= */

.ivk-routeguide-panel-label {
  display: block;

  margin-bottom: 6px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}


/* route 1 andere accentkleur */

.ivk-routeguide-panel-explore
.ivk-routeguide-panel-label {
  color: #547D9B;
}


/* route 3 andere accentkleur */

.ivk-routeguide-panel-rethink
.ivk-routeguide-panel-label {
  color: #8C7658;
}


.ivk-routeguide-panel-main > h3 {
  max-width: 720px;

  margin:
    0
    0
    18px;

  font-size: 28px;
  line-height: 1.35;

  font-weight: 600;

  letter-spacing: -0.015em;

  color: #06428A;
}

.ivk-routeguide-panel-main > p {
  max-width: 770px;

  margin:
    0
    0
    13px;

  font-size: 14px;
  line-height: 1.78;

  color: #53667C;
}

.ivk-routeguide-panel-main > p:last-child {
  margin-bottom: 0;
}


/* =========================================================
   ASIDE
   ========================================================= */

.ivk-routeguide-aside {
  padding-left: 27px;

  border-left:
    1px solid #DDE6EA;
}

.ivk-routeguide-aside-label {
  display: block;

  margin-bottom: 13px;

  font-size: 8px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}


/* route specifieke accentkleur */

.ivk-routeguide-aside-explore
.ivk-routeguide-aside-label {
  color: #547D9B;
}

.ivk-routeguide-aside-rethink
.ivk-routeguide-aside-label {
  color: #8C7658;
}


/* =========================================================
   VRAGEN
   ========================================================= */

.ivk-routeguide-thought {
  display: grid;

  grid-template-columns:
    30px
    minmax(0, 1fr);

  gap: 10px;

  align-items: start;

  padding:
    12px
    0;

  border-top:
    1px solid #E5EBEE;
}

.ivk-routeguide-thought:first-of-type {
  border-top: 0;
}

.ivk-routeguide-thought > span {
  width: 28px;
  height: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    rgba(6, 175, 204, 0.08);

  font-size: 7.5px;
  line-height: 1;

  color: #06AFCC;
}

.ivk-routeguide-aside-explore
.ivk-routeguide-thought > span {
  background:
    rgba(84, 125, 155, 0.09);

  color: #547D9B;
}

.ivk-routeguide-aside-rethink
.ivk-routeguide-thought > span {
  background:
    rgba(154, 132, 98, 0.10);

  color: #8C7658;
}

.ivk-routeguide-thought p {
  margin: 0;

  font-size: 11.5px;
  line-height: 1.6;

  color: #607485;
}


/* onderregel */

.ivk-routeguide-aside-line {
  margin-top: 17px;

  padding-top: 14px;

  border-top:
    1px solid #DDE6EA;

  font-size: 11px;
  line-height: 1.55;

  color: #06428A;
}


/* =========================================================
   PERSOONLIJK VERHAAL
   ========================================================= */

.ivk-routeguide-story {
  margin-top: 28px;

  padding:
    20px
    0
    0;

  border-top:
    1px solid #DCE7EA;
}

.ivk-routeguide-story-label {
  display: block;

  margin-bottom: 3px;

  font-size: 8px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.1em;

  color: #06AFCC;
}

.ivk-routeguide-story h4 {
  margin:
    0
    0
    6px;

  font-size: 16px;
  line-height: 1.45;

  font-weight: 600;

  color: #06428A;
}

.ivk-routeguide-story > p {
  max-width: 720px;

  margin: 0;

  font-size: 12.5px;
  line-height: 1.72;

  color: #607485;
}


/* =========================================================
   PERSOONLIJKE ROUTE
   ========================================================= */

.ivk-routeguide-storyline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;

  gap: 6px;

  margin-top: 13px;
}

.ivk-routeguide-storyline span {
  padding:
    5px
    7px;

  border-radius: 6px;

  background:
    rgba(6, 175, 204, 0.055);

  font-size: 9.5px;
  line-height: 1.35;

  color: #53667C;
}

.ivk-routeguide-storyline i {
  font-style: normal;

  color: #06AFCC;
}


/* =========================================================
   ROUTE 02 — MVK
   ========================================================= */

.ivk-routeguide-aside-deepen h4 {
  margin:
    0
    0
    7px;

  font-size: 15px;
  line-height: 1.45;

  font-weight: 600;

  color: #06428A;
}

.ivk-routeguide-aside-deepen > p {
  margin:
    0
    0
    13px;

  font-size: 11.5px;
  line-height: 1.68;

  color: #607485;
}

.ivk-routeguide-mvk {
  display: flex;
  flex-wrap: wrap;
  align-items: center;

  gap: 6px;

  padding:
    10px
    0
    17px;

  border-bottom:
    1px solid #DDE6EA;
}

.ivk-routeguide-mvk span {
  font-size: 9.5px;
  line-height: 1.4;

  color: #06428A;
}

.ivk-routeguide-mvk i {
  font-style: normal;

  color: #06AFCC;
}


/* =========================================================
   CERTIFICERING
   ========================================================= */

.ivk-routeguide-certline {
  padding-top: 17px;
}

.ivk-routeguide-certline > span {
  display: block;

  margin-bottom: 4px;

  font-size: 8px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.09em;

  color: #06AFCC;
}

.ivk-routeguide-certline p {
  margin: 0;

  font-size: 11px;
  line-height: 1.67;

  color: #607485;
}


/* =========================================================
   AFSLUITING
   ========================================================= */

.ivk-routeguide-final {
  position: relative;

  overflow: hidden;

  padding:
    39px
    30px;

  border-radius: 18px;

  background: #051D3D;

  text-align: center;

  box-shadow:
    0 18px 42px rgba(5, 29, 61, 0.13);
}

.ivk-routeguide-final::before,
.ivk-routeguide-final::after {
  content: "";

  position: absolute;

  border:
    1px solid
    rgba(6, 175, 204, 0.14);

  border-radius: 50%;

  pointer-events: none;
}

.ivk-routeguide-final::before {
  width: 240px;
  height: 240px;

  left: -130px;
  bottom: -180px;
}

.ivk-routeguide-final::after {
  width: 210px;
  height: 210px;

  right: -110px;
  top: -150px;
}

.ivk-routeguide-final-label {
  position: relative;
  z-index: 2;

  display: block;

  margin-bottom: 6px;

  font-size: 9px;
  line-height: 1.4;

  font-weight: 600;

  letter-spacing: 0.11em;

  color: #06AFCC;
}

.ivk-routeguide-final h2 {
  position: relative;
  z-index: 2;

  max-width: 760px;

  margin:
    0
    auto
    8px;

  font-size: clamp(24px, 3vw, 31px);
  line-height: 1.4;

  font-weight: 600;

  color: #FFFFFF;
}

.ivk-routeguide-final > p {
  position: relative;
  z-index: 2;

  max-width: 670px;

  margin:
    0
    auto;

  font-size: 13px;
  line-height: 1.7;

  color:
    rgba(255, 255, 255, 0.72);
}

.ivk-routeguide-final-line {
  position: relative;
  z-index: 2;

  width: 52px;
  height: 2px;

  margin:
    20px
    auto;

  border-radius: 999px;

  background: #06AFCC;
}

.ivk-routeguide-final-quote {
  position: relative;
  z-index: 2;

  display: block;

  max-width: 750px;

  margin: 0 auto;

  font-size: 15.5px;
  line-height: 1.6;

  color: #FFFFFF;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

  .ivk-routeguide {
    padding:
      70px
      22px
      78px;
  }

  .ivk-routeguide-panel {
    gap: 38px;
  }

}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-routeguide {
    padding:
      58px
      18px
      66px;
  }


  /* header */

  .ivk-routeguide-header {
    gap: 14px;

    margin-bottom: 34px;
  }

  .ivk-routeguide-number {
    width: 46px;
    height: 46px;

    flex-basis: 46px;

    border-radius: 13px;
  }

  .ivk-routeguide-header h2 {
    font-size: 31px;
  }

  .ivk-routeguide-header p {
    font-size: 14px;
  }


  /* .elementor-7452 .elementor-element.elementor-element-0e00cfe */

  .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe {
    padding-bottom: 12px;
  }

  .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-head {
    display: block;

    padding:
      22px
      0
      17px;
  }

  .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-head h3 {
    font-size: 22px;
  }

  .ivk-routeguide-.elementor-7452 .elementor-element.elementor-element-0e00cfe-head > p {
    max-width: none;

    margin-top: 5px;

    text-align: left;
  }

  .ivk-routeguide-options {
    grid-template-columns: 1fr;

    gap: 8px;
  }

  .ivk-routeguide-option {
    min-height: 78px;
  }


  /* content */

  .ivk-routeguide-content {
    min-height: 0;
  }

  .ivk-routeguide-panel {
    grid-template-columns: 1fr;

    gap: 28px;

    padding:
      32px
      2px
      38px;
  }

  .ivk-routeguide-panel-main > h3 {
    font-size: 23px;
  }

  .ivk-routeguide-panel-main > p {
    font-size: 13.5px;
  }


  /* aside */

  .ivk-routeguide-aside {
    padding:
      21px
      0
      0;

    border-left: 0;

    border-top:
      1px solid #DDE6EA;
  }


  /* final */

  .ivk-routeguide-final {
    padding:
      32px
      21px;
  }

  .ivk-routeguide-final h2 {
    font-size: 24px;
  }

  .ivk-routeguide-final-quote {
    font-size: 14.5px;
  }

}


/* =========================================================
   KLEINE MOBIEL
   ========================================================= */

@media (max-width: 480px) {

  .ivk-routeguide-header {
    display: block;
  }

  .ivk-routeguide-number {
    margin-bottom: 13px;
  }

  .ivk-routeguide-header h2 {
    font-size: 29px;
  }

  .ivk-routeguide-option {
    grid-template-columns:
      36px
      minmax(0, 1fr);

    padding:
      14px
      15px;
  }

  .ivk-routeguide-option-number {
    width: 34px;
    height: 34px;
  }

}


/* =========================================================
   MINDER BEWEGING
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .ivk-routeguide-option,
  .ivk-routeguide-option::after,
  .ivk-routeguide-option-number,
  .ivk-routeguide-panel {
    transition: none;
    animation: none;
  }

}


/* =========================================================
   ELEMENTOR FULL WIDTH
   ========================================================= */

.elementor-widget-html:has(.ivk-routeguide),
.elementor-widget-html:has(.ivk-routeguide)
> .elementor-widget-container,
.elementor-section:has(.ivk-routeguide),
.elementor-container:has(.ivk-routeguide),
.e-con:has(.ivk-routeguide) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* =========================================================
   IVK — INTERACTIE HINTS
   ========================================================= */

.ivk-interaction-hint {
  display: flex;
  align-items: center;

  gap: 14px;

  margin:
    0
    0
    24px;

  padding:
    14px
    17px;

  border:
    1px solid
    rgba(6, 175, 204, 0.22);

  border-radius: 13px;

  background:
    linear-gradient(
      135deg,
      rgba(6, 175, 204, 0.065),
      rgba(6, 175, 204, 0.025)
    );
}

.ivk-interaction-hint-icon {
  width: 38px;
  height: 38px;

  flex: 0 0 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #06AFCC;

  color: #FFFFFF;

  font-size: 17px;
  line-height: 1;
}

.ivk-interaction-hint-copy {
  min-width: 0;
}

.ivk-interaction-hint-title {
  display: block;

  margin-bottom: 2px;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 600;

  color: #06428A;
}

.ivk-interaction-hint-text {
  display: block;

  font-size: 11.5px;
  line-height: 1.55;

  color: #607485;
}


/* =========================================================
   KLEINE CTA IN KLIKBARE ELEMENTEN
   ========================================================= */

.ivk-click-cta {
  display: inline-flex;
  align-items: center;

  gap: 6px;

  margin-top: 9px;

  font-size: 10.5px;
  line-height: 1.4;

  font-weight: 600;

  color: #06AFCC;

  transition:
    gap .2s ease,
    transform .2s ease;
}

.ivk-click-cta::after {
  content: "→";

  font-size: 12px;
}

label:hover .ivk-click-cta,
button:hover .ivk-click-cta,
a:hover .ivk-click-cta {
  gap: 9px;
}


/* =========================================================
   MOBIEL
   ========================================================= */

@media (max-width: 760px) {

  .ivk-interaction-hint {
    align-items: flex-start;

    gap: 11px;

    padding:
      13px
      14px;

    margin-bottom: 19px;
  }

  .ivk-interaction-hint-icon {
    width: 34px;
    height: 34px;

    flex-basis: 34px;

    font-size: 15px;
  }

  .ivk-interaction-hint-title {
    font-size: 12px;
  }

  .ivk-interaction-hint-text {
    font-size: 11px;
  }

}/* End custom CSS */