/* IVSO definitieve site — laadt ná site.css en geldt alleen onder body.fin.
   Per pagina blijft het gekozen concept (.c1 of .c2) staan. Hier komt bovenop:
   navigatie en knoppen van concept 2 op elke pagina, het echte logo, en de nieuwe onderdelen
   (agenda, partners, burgerschap, expertisenetwerk). Feedback klant 10–11 nov 2026. */

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ext{width:11px;height:11px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .45s var(--ease)}
a:hover>.ext,a:hover .p-link .ext{transform:translate(2px,-2px)}

/* ---------- knoppen: afgerond zoals concept 2, op elke pagina */
.fin .button{border-radius:999px}

/* ---------- header: zwevende pil van concept 2 */
.fin .site-header{background:transparent;padding-top:12px}
.fin.c1 .site-header{background:var(--cream)}
.fin .site-header.is-scrolled,.fin.c1 .site-header.is-scrolled{background:transparent;box-shadow:none}
.fin .header-inner{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:0 8px 0 16px;min-height:72px;gap:20px;box-shadow:0 18px 40px -30px rgba(28,26,22,.35)}
.menu-open .fin .header-inner{background:transparent;border-color:var(--line-ink);box-shadow:none}
.menu-open .fin .site-header{background:transparent;transform:none}
.fin .main-nav ul{gap:2px}
.fin .main-nav a{padding:10px 13px}
.fin .main-nav a:hover{background:var(--cream)}
.fin .main-nav a::after{display:none}
.fin .main-nav a[aria-current]{background:var(--sand)}

/* logo: embleem + woordmerk (header), staand logo (footer) */
.logo-img{flex-direction:row;align-items:center;gap:12px}
.logo-img .l-mark{width:54px;height:54px}
.logo-img .l-word{width:auto;height:39px}
.logo-img .l-dark{display:none}
.menu-open .site-header .logo-img .l-dark{display:block}
.menu-open .site-header .logo-img img:not(.l-dark){display:none}
.logo-dark{gap:14px}
.logo-dark img:first-child{width:76px;height:76px}
.logo-dark img:last-child{width:auto;height:52px;max-width:100%}

/* ---------- homepage: vier ingangen op één lijn (titels, teksten en pijlen gelijk) */
.fin .gates{grid-auto-rows:auto}
.fin .gate{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:14px;align-content:start;min-height:0}
.fin .gate .g-num{margin-bottom:clamp(48px,6vw,104px)}
.fin .gate .g-title{margin-top:0;align-self:end}
.fin .gate .g-text{align-self:start}
.fin .gate .g-arrow{align-self:end;margin-top:12px}
.fin .sh-side p+p{margin-top:12px}
.sh-claim{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(22px,1.9vw,28px);line-height:1.15;letter-spacing:-.015em;color:var(--ink);margin-bottom:12px}

/* ---------- KERN-pagina: één lichte afsluiting, daarna de footer */
.fin .kern-cta p{color:var(--muted)}
.fin .kern-cta .secondary{color:var(--ink);border-color:rgba(28,26,22,.24)}

/* ---------- footer zonder herhaalde slogan */
.fin .site-footer{padding:clamp(56px,7vw,96px) 0 40px}
.fin .footer-grid{padding-top:0}
.fin .footer-grid .button{margin-top:16px}
.fin .footer-grid .logo-dark{opacity:1;margin-bottom:8px}

/* ---------- agenda op de homepage */
.ev-list{border-top:1px solid var(--line)}
.ev-row{display:grid;grid-template-columns:120px minmax(0,1fr) 56px;gap:32px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .5s var(--ease),background-color .4s}
.ev-row:hover{background:var(--paper);padding-inline:20px}
.ev-row:hover .g-arrow{opacity:1;background:var(--ink);border-color:var(--ink);color:var(--cream)}
.ev-date{display:flex;flex-direction:column;line-height:1}
.ev-day{font-family:var(--serif);font-size:clamp(56px,5.4vw,80px);line-height:.85;color:var(--gold-text);letter-spacing:-.03em}
.ev-mon{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-top:8px}
.ev-dow{font-size:13px;color:var(--muted);margin-top:4px}
.ev-main{display:flex;flex-direction:column;gap:6px}
.ev-kind{display:block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);margin:0}
.ev-title{font-family:var(--serif);font-size:clamp(26px,2.6vw,40px);line-height:1.08;letter-spacing:-.02em}
.ev-ctx{font-size:15px;color:var(--muted);margin:0}
.ev-row .g-arrow{justify-self:end}

/* ---------- trainingenpagina */
.agenda-page{padding-top:clamp(32px,4vw,64px)}
.ev-cards{display:grid;gap:24px}
.ev-card{display:grid;grid-template-columns:150px minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(24px,4vw,56px);padding:clamp(28px,3.5vw,48px);background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:var(--r-lg);scroll-margin-top:120px}
.ev-card:nth-child(even){background:var(--cream)}
.ev-card .ev-day{font-size:clamp(72px,7vw,112px)}
.ev-body h2{font-size:clamp(32px,3.4vw,52px);margin:10px 0 14px}
.ev-body .ev-ctx{font-weight:500;color:var(--ink-2);margin-bottom:16px}
.ev-body>p:not(.ev-kind):not(.ev-ctx):not(.ev-note){color:var(--muted);font-size:16px}
.ev-body .button{margin-top:12px}
.ev-note{font-size:13px;color:var(--muted);margin:12px 0 0}
.ev-facts{margin:0;border-top:1px solid var(--line);align-self:start}
.ev-facts>div{padding:14px 0;border-bottom:1px solid var(--line)}
.ev-facts dt{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);margin-bottom:4px}
.ev-facts dd{margin:0;font-size:15px;line-height:1.5}
.agenda-empty{font-size:18px;padding:40px;background:var(--cream);border-radius:var(--r-lg);max-width:none}
.net-teaser{padding-top:0}

/* ---------- samenwerkingspartners */
.partner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;list-style:none;margin:0;padding:0}
.partner{display:flex;flex-direction:column;gap:8px;min-height:180px;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);text-decoration:none;transition:border-color .4s,transform .6s var(--ease),box-shadow .6s var(--ease)}
.partner:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 30px 60px -44px rgba(28,26,22,.5)}
.p-name{font-family:var(--serif);font-size:clamp(26px,2.4vw,34px);line-height:1.1;letter-spacing:-.02em}
.p-tag{font-size:15px;color:var(--muted)}
.p-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;font-size:14px;font-weight:700}

/* ---------- burgerschap (trajectenpagina) */
.burger-fin .wrap>div+div,.burger-fin .bf-close{margin-top:clamp(56px,7vw,104px)}
.bf-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(40px,7vw,112px);align-items:start}
.bf-intro h2{font-size:clamp(36px,4.2vw,64px)}
.bf-kicker{font-family:var(--serif);font-size:clamp(24px,2.2vw,32px);line-height:1.2;letter-spacing:-.015em;color:var(--ink-2);max-width:22ch}
.bf-body p{color:var(--ink-2)}
.bf-moment{font-family:var(--serif);font-size:clamp(22px,2vw,28px);line-height:1.25;padding-left:20px;border-left:2px solid var(--gold);color:var(--ink)!important}
.burger-fin h3{font-size:clamp(28px,2.8vw,42px);margin-bottom:24px}
.bf-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(32px,6vw,96px);padding-top:clamp(40px,5vw,64px);border-top:1px solid rgba(28,26,22,.14)}
.bf-cols{columns:2 300px;column-gap:48px}
.bf-cols p{break-inside:avoid}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;list-style:none;margin:0;padding:0}
.theme-grid li{padding:26px;background:var(--paper);border-radius:var(--r-lg);border:1px solid rgba(28,26,22,.08)}
.theme-grid .num{display:block;font-size:12px;font-weight:700;color:var(--gold-text);margin-bottom:14px}
.theme-grid h4{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.1;letter-spacing:-.015em;margin:0 0 8px}
.theme-grid p{margin:0;font-size:15px;color:var(--muted)}
.theme-grid .theme-cta{padding:0;background:var(--ink);border-color:var(--ink)}
.theme-cta a{display:flex;flex-direction:column;justify-content:space-between;gap:24px;height:100%;padding:26px;color:var(--cream);text-decoration:none}
.theme-cta h4 em{font-style:italic;color:var(--gold-light)}
.theme-cta .text-link{align-self:flex-start;color:var(--gold-light)}
.theme-cta a:hover .text-link{background-size:0 1px;background-position:100% 100%}
.theme-cta a:hover .arw{transform:translateX(4px)}
.bf-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,112px);padding-top:clamp(40px,5vw,64px);border-top:1px solid rgba(28,26,22,.14)}
.bf-close{font-size:clamp(28px,3vw,46px);max-width:30ch}
.bf-close em{font-style:italic;color:var(--gold-text)}

/* ---------- expertisenetwerk */
.net-intro{margin-top:20px!important}
.net-motto{font-family:var(--serif);font-style:italic;font-size:clamp(22px,2vw,28px);color:var(--gold-text);margin:28px 0 0}
.net-label{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text)}
.role-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
.role-tiles li{font-family:var(--serif);font-size:clamp(20px,1.7vw,24px);line-height:1.25;background:var(--paper)}
.net-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 48px;align-items:end;margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
.net-foot p{margin:0;color:var(--muted)}
.net-foot .net-strong{grid-row:2;font-family:var(--serif);font-size:clamp(24px,2.2vw,32px);line-height:1.2;color:var(--ink)}
.net-foot .button{grid-row:1/3;grid-column:2}
.net-pro-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}
.net-side{display:grid;gap:16px}
.net-box{padding:clamp(24px,3vw,36px);background:var(--paper);border-radius:var(--r-lg)}
.net-box h3{font-size:clamp(26px,2.2vw,32px);margin-bottom:20px}
.net-box p{margin:0;color:var(--ink-2)}
.net-ask{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:clamp(48px,6vw,80px);padding:clamp(28px,3.5vw,48px);background:var(--ink);color:var(--cream);border-radius:var(--r-lg)}
.net-ask .nc-title{margin:0;max-width:22ch}
.net-outro .center-cta{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(40px,7vw,112px);align-items:end}
.net-outro h2{font-size:clamp(36px,4.4vw,68px);margin:0}
.net-outro p{color:var(--muted);margin:0}

/* ---------- contactformulier: onderwerp vanuit een link */
.form-topic{display:inline-block;margin:-8px 0 20px;padding:8px 14px;background:var(--gold-light);border-radius:999px;font-size:14px;font-weight:700}

/* ---------- responsief */
@media (max-width:1240px){
  .fin .main-nav a{padding:10px 9px;font-size:14px}
  .fin .header-cta{padding:0 16px}
}
@media (max-width:1100px){
  .fin .header-cta .arw{display:none}
  .ev-card{grid-template-columns:120px minmax(0,1fr)}
  .ev-facts{grid-column:2}
  .role-tiles{grid-template-columns:1fr 1fr}
}
@media (max-width:1000px){
  .bf-intro,.bf-split,.bf-pair,.net-pro-grid,.net-outro .center-cta{grid-template-columns:1fr}
  .net-ask{flex-direction:column;align-items:flex-start}
}
@media (max-width:700px){
  .fin .site-header{padding-top:8px}
  .fin .header-inner{padding:0 6px 0 12px;min-height:62px}
  .fin .site-header .wrap{width:calc(100% - 20px)}
  .logo-img{gap:8px}
  .logo-img .l-mark{width:44px;height:44px}
  .logo-img .l-word{height:30px}
  .fin .gate .g-num{margin-bottom:24px}
  .ev-row{grid-template-columns:72px minmax(0,1fr) 44px;gap:16px;padding:22px 0}
  .ev-row:hover{padding-inline:0}
  .ev-row .ev-day{font-size:48px}
  .ev-row .ev-dow{display:none}
  .ev-row .g-arrow{width:44px;height:44px}
  .ev-ctx{font-size:14px}
  .ev-card{grid-template-columns:1fr;gap:20px}
  .ev-card .ev-date{flex-direction:row;align-items:baseline;gap:12px}
  .ev-card .ev-day{font-size:64px}
  .ev-facts{grid-column:auto}
  .ev-body .button{width:100%;justify-content:space-between}
  .role-tiles{grid-template-columns:1fr}
  .net-foot{grid-template-columns:1fr}
  .net-foot .button,.net-foot .net-strong{grid-row:auto;grid-column:auto}
  .theme-grid{grid-template-columns:1fr}
  .partner{min-height:0}
}

/* ---- home: expertisenetwerk-band (vervangt KERN-marquee) ---- */
.fin .xband{padding-block:clamp(72px,9vw,120px)}
.fin .xb-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:center}
.fin .xband h2{font-size:clamp(36px,4.2vw,64px);max-width:none;margin:14px 0 26px}
.fin .xb-lead{color:rgba(245,240,232,.78);max-width:52ch;margin:0 0 14px}
.fin .xb-motto{font-family:var(--serif);font-style:italic;font-size:clamp(20px,1.8vw,24px);color:var(--gold-light);margin:0 0 30px}
.fin .xb-links{display:grid;gap:14px}
.fin .xb-link{display:grid;grid-template-columns:minmax(0,1fr) 56px;grid-template-rows:auto auto;column-gap:20px;align-items:center;padding:26px 28px;border:1px solid var(--line-ink);border-radius:var(--r-lg,20px);color:var(--cream);text-decoration:none;transition:background-color .4s,border-color .4s}
.fin .xb-link .eyebrow{grid-column:1;margin:0 0 6px}
.fin .xb-title{grid-column:1;font-family:var(--serif);font-size:clamp(22px,2vw,28px);line-height:1.2}
.fin .xb-link .g-arrow{grid-column:2;grid-row:1/3;justify-self:end;border-color:var(--line-ink);color:var(--cream)}
.fin .xb-link:hover{background:rgba(245,240,232,.05);border-color:rgba(245,240,232,.4)}
.fin .xb-link:hover .g-arrow{background:var(--gold);border-color:var(--gold);color:var(--ink);opacity:1}
@media (max-width:1000px){.fin .xb-grid{grid-template-columns:1fr}}
@media (max-width:700px){.fin .xb-link{padding:20px;grid-template-columns:minmax(0,1fr) 44px}.fin .xb-link .g-arrow{width:44px;height:44px}}

/* ---- contact: beter leesbare gegevens (feedback 12 nov) ---- */
.fin .big-link a{font-family:var(--sans);font-weight:500;font-size:clamp(19px,1.9vw,26px);line-height:1.25;letter-spacing:-.005em;color:var(--ink);font-variant-numeric:lining-nums}
.fin .big-link a:hover{color:var(--gold-text)}

/* ---- expertisenetwerk: slot + partners in één sectie (geen lege ruimte meer) ---- */
.fin .net-close-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(40px,7vw,112px);align-items:center}
.fin .net-close h2{font-size:clamp(36px,4.4vw,68px);margin:12px 0 24px}
.fin .net-close-grid>div>p{color:var(--muted);max-width:56ch;margin:0 0 32px}
.fin .net-partners{padding:clamp(28px,3vw,40px);background:var(--sand,#efe7dc);border-radius:var(--r-lg)}
.fin .net-partners>p{color:var(--muted);margin:10px 0 22px}
.fin .partner-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.fin .partner-list .partner{min-height:0}
@media (max-width:1000px){.fin .net-close-grid{grid-template-columns:1fr}}
.form-topic[hidden]{display:none!important}
@media (max-width:400px){.logo-img{gap:6px}.logo-img .l-mark{width:38px;height:38px}.logo-img .l-word{height:25px}}
@media (max-width:700px){.logo-dark{max-width:100%}.logo-dark img:first-child{width:56px;height:56px;flex:none}.logo-dark img:last-child{height:auto;width:230px;max-width:calc(100% - 70px);min-width:0}}

/* ---- livegang: privacy, honeypot, juridische pagina ---- */
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-privacy{font-size:14px;line-height:1.55;color:var(--muted);margin:4px 0 20px}
.form-privacy a,.footer-meta a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.fin .legal{padding-top:clamp(24px,4vw,48px)}
.fin .legal-body{max-width:760px}
.fin .legal-body h2{font-size:clamp(26px,2.4vw,34px);margin:48px 0 14px}
.fin .legal-body h2:first-child{margin-top:0}
.fin .legal-body p,.fin .legal-body li{color:var(--ink-2);line-height:1.7}
.fin .legal-body ul{padding-left:20px;margin:0 0 16px}
.fin .legal-body li{margin-bottom:8px}
.fin .legal-body a{color:var(--gold-text);text-decoration:underline;text-underline-offset:3px}
