@import url("https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700,800,900|Caladea:400,700");
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400;1,500;1,700;1,900&display=swap');

body{
  color: #222;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
}

#sp-main-body {padding: 40px 0;}

p {margin: 0 0 20px;}

/* === Compacte kopteksten met gradient, behalve module-titels === */
h1:not(.sp-module-title):not(.sppb-addon-title),
h2:not(.sp-module-title):not(.sppb-addon-title),
h3:not(.sp-module-title):not(.sppb-addon-title),
h4:not(.sp-module-title):not(.sppb-addon-title),
h5:not(.sp-module-title):not(.sppb-addon-title),
h6:not(.sp-module-title):not(.sppb-addon-title) {
  background: linear-gradient(180deg, rgba(26, 62, 117, 1) 0%, rgba(31, 77, 144, 1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #1A3E75; /* Fallback voor oudere browsers */
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  margin: 16px 0;
}

h1:not(.sp-module-title):not(.sppb-addon-title), { font-size: 1.75rem; line-height: 2.2rem; }   /* ~28px */
h2:not(.sp-module-title):not(.sppb-addon-title), { font-size: 1.5rem; line-height: 2rem; }     /* ~24px */
h3:not(.sp-module-title):not(.sppb-addon-title), { font-size: 1.25rem; line-height: 1.75rem; } /* ~20px */
h4:not(.sp-module-title):not(.sppb-addon-title), { font-size: 1.125rem; line-height: 1.5rem; } /* ~18px */
h5:not(.sp-module-title):not(.sppb-addon-title), { font-size: 1rem; line-height: 1.4rem; }     /* ~16px */
h6:not(.sp-module-title):not(.sppb-addon-title), { font-size: 0.875rem; line-height: 1.25rem; }/* ~14px */

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: inherit;
  color: #2C68C2;
}

b, strong {color: #151a33;}

iframe {border: none;}

a {
  transition: all 0.3s ease 0s;
  text-decoration: none;
  cursor: pointer;
  color: #2C68C2;
}

a:hover, a:focus, a:visited {
  text-decoration: none;
}

a:hover {
  color: #333;
  text-decoration: none;
}

ul:not([class]),
ol:not([class]) {
  list-style-position: outside;
  margin: 1em 0;
  padding-left: 2em;      /* Zorgt dat de tekst uitlijnt met de bullet of nummer */
  font-size: 1rem;
  color: #2f2b2b;
  line-height: 1.6;
}

ul:not([class]) {
  list-style-type: square; /* Vierkante bullet */
}

.sponsoren .djslider-default img.dj-image {
    border: 1px solid #ccc !important;
    padding: 8px;
}

.sponsoren .djslider-default img.dj-image {
    border: 1px solid #ccc !important;
    padding: 8px;
}

.sponsoren-vervolg .djslider-default img.dj-image {
    border: 1px solid #ccc !important;
    padding: 8px;
}

.sponsoren-vervolg {margin-bottom: 40px;}

.article-details {
    box-shadow: 1px 1px 10px 1px #e8e8e8;
	padding: 30px;
}

/* HEADER */

#sp-top1 {display: flex; align-items: center; justify-content: flex-start; 	min-height: 42px;}
#sp-top2 {display: flex; align-items: center; justify-content: flex-end; 	min-height: 42px;}
#sp-top2 p {margin: 0 0 0px;}
#sp-top-bar {
	padding: 0px 0;
	font-size: 1rem;
	background: linear-gradient(180deg, rgba(26, 62, 117, 1) 0%, rgba(31, 77, 144, 1) 100%);
	color: #fff;
	min-height: 42px;
}
#sp-top-bar a {color: #FFFFFF;}

.btn-primary, .sppb-btn-primary {
    border-color: #C41015;
    background-color: #C41015;
	padding: 12px 12px;
	border-radius: unset;
}

.bd-button {
    border-color: #C41015;
    background-color: #C41015;
	padding: 12px 20px;
	border-radius: 6px;
	color: #fff
}

/* MENU */
.sp-megamenu-parent>li .sp-menu-badge {
    position: absolute;
    top: 20px;
    right: 0px;
    padding: 4px 10px;
    line-height: 1.0;
    font-weight: 600;
    border-radius: 10px;
    font-size: 12px;
    letter-spacing: 0px;
}
.sp-megamenu-parent>li>a, .sp-megamenu-parent>li>span {
	padding: 0 10px; 
	line-height: 110px; 
	font-size: 1rem;
	color: #2f2b2b;
    font-weight: 600;
}
.sp-megamenu-parent>li.active>a, .sp-megamenu-parent>li.active:hover>a {color: #2C68C2;}
.sp-megamenu-parent>li:hover>a {color: #2C68C2;}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {padding: 0;border-radius: 0;background: #ECF1F8;}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item, .sp-megamenu-parent .sp-mega-group li {margin: 0;}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a, .sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
	display: block;
	color: #2f2b2b;
	font-weight: 600;
	padding: 8px 20px;
	font-size: 1rem;
	line-height: 26px;
	border-bottom: 1px solid #ddd;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item:last-child > a {border-bottom: none;}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a {
	color: #fff;
	background-color: #2C68C2;
	border-color: transparent;
	padding-left: 25px;
}

/* menu rechts */
/* sub menu rechts */

#sp-left .sp-module, #sp-right .sp-module {
    margin-bottom: 20px;
    border: 1px solid #eee;
    padding: 20px 20px 10px 20px;
    border-radius: 0px;
    margin-top: 0;
    background: #f5f5f5;
	box-shadow: 1px 1px 12px 1px #e8e8e8
}

#sp-left .sp-module .sp-module-title, #sp-right .sp-module .sp-module-title {
    margin: 0 0 10px;
    padding-bottom: 10px;
    font-size: 1.125rem;
    font-weight: 600;
    border-bottom: none;
}

#sp-right .sp-module-content li.active>a {color: #2C68C2; background: #fff; border-left: 3px solid #2C68C2; border-radius: .25rem;}
#sp-right .sp-module-content>ul>li ul>li {padding-left: 20px;}
#sp-right .sp-module ul>li>a {display: block; padding: 6px 8px 6px 14px; line-height: 25px;}
#sp-right .sp-module ul>li {border-bottom: 1px solid #ddd;}
#sp-right .sp-module ul>li:first-child {border-top: 0px solid #ddd;}
.sp-module ul>li>a:hover {color: #2C68C2;}

span.nav-header {
    color: #999; text-transform: uppercase;
}

/* einde menu rechts */

/* FOOTER */
#sp-bottom {
    background: linear-gradient(180deg, rgba(186, 16, 20, 1) 0%, rgba(225, 18, 24, 1) 100%);
}

#sp-footer {
    background: linear-gradient(180deg, rgba(26, 62, 117, 1) 0%, rgba(31, 77, 144, 1) 100%);
}

#sp-footer .container-inner {padding: 20px 0;}
#sp-bottom .sp-module .sp-module-title {margin: 0 0 20px;}
#sp-footer a, #sp-bottom a {color: #eee; text-decoration: underline;}

/* RESPONSIVE */

.burger-icon>span {
    height: 4px;
}

@media (max-width: 992px) {
	#sp-top-bar {display: none !important;}
	.logo-image {height: 50px !important;}
}

@media (max-width: 1200px) {
	.sp-megamenu-parent>li>a,
	.sp-megamenu-parent>li>span {padding: 0 5px !important; font-size: 0.875rem !important; font-weight: 500 !important;}
}

/* tabellen jeroen */
/* Scroll wrapper */
.table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Basis styling voor de tabel */
.table-responsive table {
  width: 100%;
  border-collapse: collapse;
  font-family: sans-serif;
  font-size: 14px;
  min-width: 600px; /* maakt scrollen nodig op smalle schermen */
}

/* Header styling */
.table-responsive thead {
  background: linear-gradient(180deg, rgba(26, 62, 117, 1) 0%, rgba(31, 77, 144, 1) 100%);
  color: white !important; /* Witte tekst in de header */
  font-weight: bold !important; /* Vetgedrukte tekst in de header */
}

/* Cel styling */
.table-responsive th,
.table-responsive td {
  padding: 12px 15px;
  text-align: left;
  border: 1px solid #e0e0e0;
  white-space: nowrap !important;  /* Voorkomt dat tekst afbreekt in de cellen */
}

/* Hover effect */
.table-responsive tbody tr:hover {
  background-color: #f9f9f9;
}

/* Mobiel: Zorg ervoor dat de tekst op kleinere schermen niet afbreekt */
@media (max-width: 767px) {
  .table-responsive table {
    width: auto;           /* Tabel neemt alleen benodigde breedte in */
    min-width: 100%;       /* Zorgt dat scroll mogelijk blijft */
    font-size: 13px;
  }

  .table-responsive th,
  .table-responsive td {
    padding: 6px 8px;
    white-space: nowrap;
  }
}