/* Gedeeld responsief EduSkoel-aanbodtemplate. Fracties delen de beschikbare
   ruimte NA aftrek van de gutters. Geen verborgen horizontale overflow. */
.aanbod-page { --edu-purple:#80008c; --edu-active:#c0009f; --edu-blue:#0085c3; color:#171717; background:#f6f7f9; font-weight:400; overflow-x:visible; font-size:16px; line-height:1.5; }
.aanbod-page *, .aanbod-page *::before, .aanbod-page *::after { box-sizing:border-box; }
.aanbod-page .container { width:calc(100% - 2rem)!important; max-width:1500px; margin-inline:auto; padding:0; }
.aanbod-page .navbar-fixed-top { position:static!important; }
.aanbod-page .navbar-header, .aanbod-page .menu, .aanbod-page #menuicwrap { top:auto!important; margin:0!important; float:none!important; }
.aanbod-page .navigation { padding:1rem 0; }
.aanbod-page .navigation>.container { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; }
.aanbod-page .navbar-brand { float:none; width:auto; height:auto; padding:0; }
.aanbod-page .navbar-brand h1 { font-size:clamp(1.25rem,2vw,2rem); margin:0; line-height:1.3; }
.aanbod-page .navbar-collapse { display:block!important; padding:0; }
.aanbod-page .menu .nav { margin:0; display:flex; flex-wrap:wrap; flex-direction:row; gap:.5rem; }
.aanbod-page .menu .nav li { display:block; float:none; }
.aanbod-page #menuicwrap { display:none!important; }
.aanbod-page #breadcrumb { margin:0; padding:.75rem 0; }
.aanbod-page .breadcrumb { margin:0; padding:0; }
.aanbod-page .aboutus { margin:0; padding:1rem 0 2rem; }
.aanbod-page #maincentralcontainer { display:block; margin:0; filter:none!important; }
.aanbod-page #maincontentleft { width:100%!important; max-width:none!important; float:none!important; padding:0; }
.aanbod-page #maincontentright { float:none!important; width:100%!important; margin:1.5rem 0 0!important; padding:0; }
.aanbod-page div[id^=eventcontent] { padding:0!important; }
.aanbod-page .filterContainer { margin:0 0 1rem; }
.aanbod-page .filterContainer form { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr)); gap:.5rem; align-items:start; }
.aanbod-page .filterContainer table,.aanbod-page .filterContainer tbody,.aanbod-page .filterContainer tr,.aanbod-page .filterContainer td { display:contents; }
.aanbod-page .filterContainer select,.aanbod-page .activitySearchBar,.aanbod-page .searchBttn { width:100%!important; max-width:none!important; min-width:0; min-height:44px; margin:0; padding:.65rem .8rem; font:inherit; line-height:1.4; border:1px solid #cbd0d6; border-radius:5px; background:#fff; color:#171717; }
.aanbod-page .filterContainer select { appearance:auto; }
.aanbod-page .searchBttn { background:var(--edu-blue); color:#fff; border-color:var(--edu-blue); cursor:pointer; }
.aanbod-page .edu-layout { display:grid!important; grid-template-columns:minmax(0,1.65fr) minmax(0,2fr) minmax(12rem,1fr); align-items:start; gap:1rem; width:100%; margin:0!important; padding:0!important; }
.aanbod-page .edu-layout::before,.aanbod-page .edu-layout::after { display:none; }
.aanbod-page .edu-layout>* { min-width:0; }
.aanbod-page .edu-layout>.ui-tabs-nav { grid-column:1; grid-row:1; float:none!important; width:100%!important; margin:0!important; padding:0!important; background:transparent!important; }
.aanbod-page .edu-layout>.ui-tabs-nav li { width:100%!important; margin:0 0 .2rem!important; padding:0!important; border:0!important; border-radius:4px; background:var(--edu-level-color, #800080)!important; white-space:normal; }
.aanbod-page .edu-layout>.ui-tabs-nav li.ui-tabs-active { background:var(--edu-level-color, #800080)!important; box-shadow:inset 0 0 0 2px #ffffffb3; }
.aanbod-page .edu-layout>.ui-tabs-nav li a { float:none!important; display:block; width:100%!important; padding:.65rem 1rem!important; white-space:normal; overflow-wrap:anywhere; color:#fff!important; line-height:1.35; font-size:.95rem; }
.aanbod-page .edu-layout>.ui-tabs-panel { grid-column:2; grid-row:1; position:static!important; float:none!important; width:100%!important; max-width:none!important; height:auto!important; overflow:visible!important; margin:0!important; padding:1rem!important; border-radius:6px; background:#fff; box-shadow:0 2px 12px #18243b0b; }
.aanbod-page .ui-tabs .ui-tabs-panel[aria-hidden=true] { display:none!important; }
.aanbod-page .edu-layout>.ui-tabs-panel h2 { margin:0 0 .75rem; font-size:clamp(1.25rem,1.7vw,1.6rem); font-weight:700!important; line-height:1.3; color:#111; }
.aanbod-page .edu-layout>.ui-tabs-panel img { display:block; max-width:100%!important; width:100%; height:auto!important; border-radius:4px; margin-bottom:1rem; }
.aanbod-page .edu-layout>.ui-tabs-panel p { font-size:1rem; line-height:1.5; overflow-wrap:anywhere; }
.aanbod-page .edu-layout>.ui-tabs-panel a { color:var(--edu-purple); overflow-wrap:anywhere; }
.aanbod-page .edu-layout>.edu-basket-column { grid-column:3; grid-row:1; align-self:start; width:100%; position:static!important; padding:0; }
.aanbod-page div[id^=basketerrormsg] { height:auto!important; color:#a31515; margin:0 0 .5rem; }
.aanbod-page div[id^=basketerrormsg]:empty { display:none; }
.aanbod-page .edu-cart-card { background:#fff; border-radius:6px; padding:1rem; box-shadow:0 2px 12px #18243b0b; }
.aanbod-page .edu-cart-heading { display:flex; gap:.75rem; align-items:center; }
.aanbod-page .edu-cart-heading svg { width:40px; height:48px; flex:none; }
.aanbod-page .edu-cart-heading h2 { font-size:1rem; margin:0 0 .35rem; }
.aanbod-page .edu-cart-status { font-size:.875rem; margin:0; line-height:1.4; }
.aanbod-page .edu-cart-progress { height:12px; background:#e5e5e5; border-radius:8px; margin:1rem 0; overflow:hidden; }
.aanbod-page .edu-cart-progress>span { display:block; height:100%; width:0; background:var(--edu-purple); }
.aanbod-page div[id^=shopbasket] { display:block!important; width:100%!important; max-width:none!important; padding:0!important; margin:0!important; transform:none!important; }
.aanbod-page div[id^=vlSelected] { width:100%; padding:0; margin:0; }
.aanbod-page div[id^=vlSelected] li { display:flex!important; gap:.5rem; align-items:center; list-style:none; border:0!important; padding:0!important; margin:0 0 .5rem!important; word-break:normal!important; overflow-wrap:anywhere; }
.aanbod-page div[id^=vlSelected] li p { margin:0; flex:1; font-size:.875rem; }
.aanbod-page .edu-remove { flex:none; min-width:44px; min-height:44px; border:0; background:transparent; cursor:pointer; color:#171717; font-size:1.5rem; }
.aanbod-page .edu-choose,.aanbod-page .edu-register { padding:.7rem 1rem; min-height:44px; border:0; border-radius:4px; background:var(--edu-purple); color:#fff!important; font:inherit; line-height:1.4; cursor:pointer; }
.aanbod-page .edu-register { width:100%; }
.aanbod-page .edu-choose { margin-top:1rem; }
.aanbod-page .edu-register:disabled { opacity:.55; cursor:default; }
.aanbod-page .edu-metadata { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr)); gap:1rem; margin:1rem 0 0; }
.aanbod-page .edu-metadata dt { font-size:.875rem; }
.aanbod-page .edu-metadata dd { margin:0; font-weight:700; overflow-wrap:anywhere; }
.aanbod-page :is(button,input,select,a):focus-visible { outline:3px solid #006fa4; outline-offset:3px; }
@media(max-width:45rem) {
    .aanbod-page .container { width:calc(100% - 1.5rem)!important; }
    .aanbod-page .edu-layout { grid-template-columns:minmax(0,1fr); }
    .aanbod-page .edu-layout>.ui-tabs-nav { grid-column:1; grid-row:1; max-height:none!important; overflow:visible!important; }
    .aanbod-page .edu-layout>.ui-tabs-panel { grid-column:1; grid-row:2; }
    .aanbod-page .edu-layout>.edu-basket-column { grid-column:1; grid-row:3; }
    .aanbod-page ul[id^=intervledulayer] { display:block!important; }
    .aanbod-page select[id^=eduvl] { display:none!important; }
    .aanbod-page .edu-choose { width:100%; }
}

.aanbod-page .edu-information-card { margin-top:.75rem; padding:1rem; background:#fff; border-radius:6px; box-shadow:0 2px 12px #18243b0b; }
.aanbod-page .edu-information-card h2 { margin:0 0 .5rem; font-size:1rem; }
.aanbod-page .edu-information-card a { display:block; color:var(--edu-purple); text-decoration:underline; overflow-wrap:anywhere; font-size:.875rem; }

/* Uniforme header, titelbalk en footer voor alle sites met dit template. */
.edu-site .container { width:calc(100% - 2rem)!important; max-width:1500px; margin-inline:auto; padding:0; box-sizing:border-box; }
.edu-site header .navbar { position:static!important; margin:0; min-height:0; border:0; }
.edu-site .navigation { padding:1rem 0; }
.edu-site header .navigation>.container { display:flex; flex-wrap:wrap; gap:.75rem 1.5rem; align-items:center; justify-content:space-between; }
.edu-site .navbar-header { position:static!important; top:auto!important; margin:0!important; float:none!important; min-width:0; flex:1 1 22rem; }
.edu-site .navbar-brand { float:none; display:block; width:auto!important; height:auto; margin:0; padding:0; }
.edu-site .navbar-brand h1 { float:none; margin:0; padding:0; font-size:clamp(1.2rem,2vw,1.8rem); line-height:1.25; font-weight:700; text-transform:none; overflow-wrap:anywhere; }
.edu-site .navbar-collapse { display:block!important; padding:0; float:none!important; max-width:100%; }
.edu-site .menu { position:static!important; top:auto!important; float:none!important; margin:0!important; }
.edu-site .menu .nav { display:flex; flex-wrap:wrap; flex-direction:row; gap:.25rem; margin:0; padding:0; width:auto; border:0; }
.edu-site .menu .nav li { display:block; float:none; margin:0; }
.edu-site .menu .nav li a { padding:.6rem .75rem; font-size:.9rem; line-height:1.4; }
.edu-site #menuicwrap { display:none!important; }
.edu-site #breadcrumb { margin:0!important; padding:.75rem 0!important; min-height:0!important; }
.edu-site .breadcrumb { margin:0!important; padding:0!important; min-height:0!important; }
.edu-site .breadcrumb li { margin:0!important; padding:0; list-style:none; line-height:1.4; font-size:1rem; }
.edu-site footer { margin:0; padding:0; }
.edu-site .footer { padding:1rem 0!important; background:#337ab7; color:#fff; }
.edu-site .copyright { float:none; margin:0!important; padding:0; text-align:left!important; font-size:.875rem; line-height:1.5; color:#fff; }
.edu-site .copyright a { font-size:inherit!important; color:inherit; }
.edu-site #conatcat-info { margin:0; padding:0; min-height:0; }
@media(max-width:45rem) {
    .edu-site .container { width:calc(100% - 1.5rem)!important; }
    .edu-site .navbar-header { flex-basis:100%; }
    .edu-site .navbar-collapse { width:100%; }
    .edu-site .menu .nav li a { padding:.5rem .6rem; }
}

/* De volledige opleidingenlijst blijft zichtbaar; gekozen details blijven in beeld. */
@media(min-width:45.0625rem) {
    .aanbod-page .edu-layout>.ui-tabs-nav { position:static; max-height:none!important; overflow:visible!important; }
    .aanbod-page .edu-layout>.ui-tabs-panel { position:sticky!important; top:1rem; max-height:calc(100vh - 2rem)!important; max-height:calc(100dvh - 2rem)!important; overflow-y:auto!important; overscroll-behavior:contain; scrollbar-gutter:stable; }
    .aanbod-page .edu-layout>.edu-basket-column { position:sticky!important; top:1rem; max-height:calc(100vh - 2rem); max-height:calc(100dvh - 2rem); overflow-y:auto; }
}
.aanbod-page .edu-layout>.ui-tabs-panel { scroll-margin-top:1rem; }
.aanbod-page .edu-layout>.ui-tabs-nav li.ui-tabs-active a { font-weight:700; }
@media(max-width:45rem) {
    .aanbod-page .edu-layout>.ui-tabs-panel { position:static!important; max-height:none!important; overflow:visible!important; }
}

.edu-site header *, .edu-site footer * { box-sizing:border-box; }
.aanbod-page .edu-layout>.ui-tabs-nav li a { min-height:44px; }

/* Rustige, uniforme donkere typografie; witte tekst op kleur blijft behouden. */
.edu-site { --edu-ink:#263344; --edu-muted:#526174; }
.aanbod-page { color:var(--edu-ink); }
.edu-site .navbar-brand h1, .edu-site .breadcrumb li { color:var(--edu-ink); }
.aanbod-page .edu-layout>.ui-tabs-panel h2 { color:var(--edu-ink); font-weight:700; }
.aanbod-page .edu-layout>.ui-tabs-panel p { color:var(--edu-ink); font-weight:400; line-height:1.6; }
.aanbod-page .edu-cart-heading h2, .aanbod-page .edu-information-card h2 { color:var(--edu-ink); font-weight:700; }
.aanbod-page .edu-cart-status, .aanbod-page .edu-metadata dt { color:var(--edu-muted); }
.aanbod-page .edu-metadata dd, .aanbod-page div[id^=vlSelected] li p { color:var(--edu-ink); }
.aanbod-page .edu-layout>.ui-tabs-nav { max-height:none!important; height:auto!important; overflow:visible!important; scrollbar-gutter:auto; }
.edu-site .menu .nav li a { color:var(--edu-ink); }
.edu-site .menu .nav li a.active, .edu-site .menu .nav li a:hover { color:#006da8; }
.aanbod-page .filterContainer select, .aanbod-page .activitySearchBar, .aanbod-page .edu-remove { color:var(--edu-ink); }

/* Eén lettertype voor de pagina, widgets en bediening. */
.edu-site { font-family:'Open Sans',Arial,sans-serif; }
.edu-site :is(header,footer,input,select,textarea,button), .aanbod-page .ui-widget { font-family:inherit; }
.aanbod-page .edu-layout>.ui-tabs-nav li[data-edu-level=hbo]:not([data-particular=true]).ui-tabs-active { background:#c0009f!important; }
.edu-site footer .container, .edu-site header .container { overflow-wrap:anywhere; }

/* Legacy accordion events retain their widget and pagination. */
.aanbod-page .edu-layout.edu-accordion-layout { grid-template-columns:minmax(0,3fr) minmax(12rem,1fr); }
.aanbod-page .edu-accordion-layout>#eduofferacc { grid-column:1; grid-row:1; width:100%!important; min-width:0; }
.aanbod-page .edu-accordion-layout>.edu-basket-column { grid-column:2; grid-row:1; }
.aanbod-page .edu-accordion-layout>#specificEduResultsViewer { grid-column:1/-1; grid-row:2; }
.aanbod-page .edu-accordion-layout .ui-accordion-header { background:var(--edu-level-color,#ee7321)!important; color:#fff!important; line-height:1.4; font-family:inherit; }
.aanbod-page .edu-accordion-layout .ui-accordion-content { width:100%!important; padding:1rem; color:var(--edu-ink); overflow:visible; }
.aanbod-page .edu-accordion-layout [id$=wrappercontentdiv] { max-width:none!important; }
.aanbod-page .edu-accordion-layout img { max-width:100%!important; height:auto!important; }
.aanbod-page .edu-accordion-layout :is(p,h2) { color:var(--edu-ink); line-height:1.5; }
.aanbod-page .edu-layout.edu-layout--no-cart { grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); }
@media(max-width:45rem) {
    .aanbod-page .edu-layout.edu-accordion-layout, .aanbod-page .edu-layout.edu-layout--no-cart { grid-template-columns:minmax(0,1fr); }
    .aanbod-page .edu-accordion-layout>.edu-basket-column { grid-column:1; grid-row:3; position:static!important; max-height:none; }
    .aanbod-page .edu-accordion-layout table, .aanbod-page .edu-accordion-layout tbody, .aanbod-page .edu-accordion-layout tr, .aanbod-page .edu-accordion-layout td { display:block; width:100%!important; }
    .aanbod-page .edu-cart-card, .aanbod-page .edu-information-card, .aanbod-page .edu-layout>.ui-tabs-panel { padding:.875rem!important; }
}
