:root{
  --primary:#4e3189;           /* paars */
  --primary-600:#5a3fe0;
  --accent:#27E59A;            /* groene highlight (optioneel) */
  --ink:#0f172a;               /* hoofdtekst */
  --muted:#667085;
  --bg:#f7f8fc;                /* lichtgrijze page bg */
  --surface:#ffffff;           /* kaarten */
  --dark-1:#1a1030;            /* donkerpaarse band */
  --dark-2:#20143f;
  --shadow: 0 8px 24px rgba(16,24,40,.08);
  --radius: 14px;
}

/* Base */
html,body{
  background:var(--bg);
  color:var(--ink);
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
a{ text-decoration:none }
.text-primary{ color:var(--primary) !important }

/* Navbar */
.navbar .navbar-brand .logo-badge{
  width:22px; height:22px; border-radius:6px; background:var(--primary); display:inline-block; position:relative; overflow:hidden;
}
.navbar .navbar-brand .logo-badge::after{
  content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(255,255,255,.18), transparent 45%);
}
.navbar .btn-primary{ background:var(--primary); border-color:var(--primary); }
.navbar .btn-primary:hover{ background:var(--primary-600); border-color:var(--primary-600); }

/* Hero */
.hero{ background:#fff; }
.hero .hero-image{ background-size:cover; background-position:center; }
.hero .btn-primary{ background:var(--primary); border-color:var(--primary); }
.hero .btn-primary:hover{ background:var(--primary-600); border-color:var(--primary-600); }

/* Brand logos */


/* Dark section */
.section-dark{ background:linear-gradient(180deg, var(--dark-1), var(--dark-2)); }

/* Section backgrounds */
.section-light {
  background: var(--bg);
}

.section-light-alt {
  background: #f1f3f9; /* iets donkerder dan var(--bg) */
}

.section-accent {
  background: linear-gradient(180deg, var(--dark-1), var(--dark-2));
  color: #fff;
}

/* Specialisaties cards */
.card-special{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:#e9e8ff;
  border-radius:var(--radius);
  padding:20px;
  height:100%;
  box-shadow: 0 4px 16px rgba(0,0,0,.12) inset;
}
.card-special .icon{
  width:46px; height:46px; border-radius:12px; display:grid; place-items:center;
  background:rgba(255,255,255,.08); margin-bottom:.6rem; font-size:20px;
}
.card-special h5{ color:#fff; font-weight:700; margin:.25rem 0 .4rem }
.card-special p{ color:#c9c6ff; font-size:.95rem; margin-bottom:.6rem }
.card-special .more{ color:#b7b4ff; font-weight:600 }
.card-special .more:hover{ color:#fff; text-decoration:underline }

/* Waarom kiezen */
.card-why{
  background:var(--surface);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:22px;
  height:100%;
  border:1px solid #eef0f6;
}
.card-why h6{ font-weight:800; margin:.35rem 0 }
.card-why p{ color:var(--muted); margin:0 }
.why-icon{
  width:44px; height:44px; border-radius:12px; display:grid; place-items:center;
  background:#efeaff; color:var(--primary); font-size:18px;
}

/* Images */
.img-card{ background-size:cover; background-position:center; box-shadow:var(--shadow); border:1px solid #eef0f6 }

/* Metrics */
.metric{
  background:var(--surface);
  border:1px solid #eef0f6;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:26px;
  text-align:center;
}
.metric .value{ font-size:2rem; font-weight:800; color:var(--primary) }
.metric .label{ color:var(--muted); font-weight:600 }

/* Testimonials */
.testimonial{
  background:var(--surface); border:1px solid #eef0f6; border-radius:var(--radius);
  box-shadow:var(--shadow); padding:22px; height:100%;
}
.testimonial p{ color:#111827 }
.testimonial .avatar{
  width:38px; height:38px; border-radius:50%; background:#e6e1ff; border:1px solid #d7cffc;
}

/* CTA strip */
.cta-strip{
  background: radial-gradient(1000px 300px at 50% -10%, rgba(255,255,255,.15), transparent), linear-gradient(90deg, var(--primary-600), var(--primary));
}

/* Forms */
.form-control, .form-select{
  border-radius:12px; border:1px solid #e6e9f2;
}
.form-control:focus{
  border-color:var(--primary);
  box-shadow:0 0 0 .2rem rgba(111,76,255,.15);
}

/* Footer */
.footer{ background:#0d0f13 }
.footer .footer-link{ color:#b9c0ce }
.footer .footer-link:hover{ color:#fff }

/* Spacing helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem }

.abt-bl{
  color:#fff !important;
}

.btn-abbl {
    background: #fff;
    color: #000;
    border: none !important;
}

.btn-abbl:hover {
      background: #fff;
    color: #000;
    border: none !important;
}

 /* Hover effect op footer links */
  .footer-link {
    transition: color 0.3s ease;
  }
  .footer-link:hover {
    color: var(--primary);
  }

  /* Social icons hover effect */
  .social-link {
    transition: color 0.3s ease, transform 0.3s ease;
  }
  .social-link:hover {
    color: var(--primary);
    transform: translateY(-3px);
  }

  /* Extra subtiele bovenlijn */
  footer {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
  }