
html{scroll-padding-top:86px}
@media (max-width:640px){html{scroll-padding-top:72px}}

.nav-links .nav-groep{position:relative;display:flex;align-items:center;gap:2px}
.nav-links .nav-groep > a{white-space:nowrap}

.nav-uit{display:flex;align-items:center;justify-content:center;
  background:none;border:0;cursor:pointer;padding:6px 2px;margin:0;
  width:24px;height:24px;color:var(--accent-diep,#87521C);line-height:0}
.nav-uit .nav-pijl{display:block;width:8px;height:8px;border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);
  transition:transform .18s ease}
.nav-uit[aria-expanded="true"] .nav-pijl{transform:translateY(1px) rotate(-135deg)}
.nav-uit:focus-visible{outline:2px solid var(--marine,#0E1F2E);outline-offset:2px;border-radius:4px}
@media (prefers-reduced-motion:reduce){.nav-uit .nav-pijl{transition:none}}

.nav-onder{display:none;position:absolute;top:100%;left:-14px;min-width:246px;
  background:var(--pagina,var(--bg,#F7F3EE));border:1px solid var(--randje,#E0D7C9);
  border-radius:14px;padding:8px;margin-top:10px;
  box-shadow:0 14px 34px rgba(14,31,46,.11);z-index:70}
.nav-groep.open > .nav-onder{display:block}
.nav-links .nav-onder a{display:block;padding:9px 14px;border-radius:9px;
  font-size:15px;line-height:1.35;border-bottom:0;white-space:normal}
.nav-links .nav-onder a:hover{background:var(--salie,#DEDFD0);color:var(--inkt,#0E1F2E)}
.nav-links .nav-onder a:focus-visible{outline:2px solid var(--marine,#0E1F2E);outline-offset:-2px}
.nav-links .nav-onder a[aria-current="page"]{font-weight:500;
  box-shadow:inset 2px 0 0 var(--accent-hover,#CF8C46)}
.nav-links .nav-onder a[aria-current="page"]::after{display:none}
.nav-groep.open > .nav-onder::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}


.nav-links .nav-extra,.nav-links .nav-routes{display:none}

@media (max-width:820px){
  .nav-links .nav-groep{display:block;padding:0}
  .nav-links .nav-groep > a{padding-right:56px}
  .nav-uit{position:absolute;right:-6px;top:0;width:50px;height:50px;padding:0}
  .nav-groep{position:relative}
  .nav-onder{display:none;position:static;min-width:0;border:0;border-radius:0;
    background:transparent;box-shadow:none;padding:0 0 10px;margin:0}
  .nav-groep.open > .nav-onder{display:block}
  .nav-groep.open > .nav-onder::before{display:none}
  .nav-links .nav-onder a{padding:12px 0 12px 16px;min-height:44px;border-radius:0;
    display:flex;align-items:center;border-bottom:0;font-size:15px;
    box-shadow:inset 2px 0 0 var(--randje,#E0D7C9)}
  .nav-links .nav-onder a:hover{background:transparent;
    box-shadow:inset 2px 0 0 var(--accent-hover,#CF8C46)}
  .nav-links .nav-onder a[aria-current="page"]{background:transparent}

  .nav-links .nav-extra{display:block}
  .nav-links .nav-routes{display:block;border-bottom:0;padding:16px 0 4px}
  .nav-links .nav-routes .knop{display:block;width:100%;text-align:center;min-height:50px;
    padding-top:14px;padding-bottom:14px}
  .nav-links .nav-routes .nav-bel{display:flex;align-items:center;min-height:44px;
    margin:6px 0 0;font-size:15px;text-decoration:none;
    color:var(--bijtekst,var(--ink,#4A5A69));
    border-bottom:0}
  .nav-links .nav-routes .nav-bel u{text-decoration:none;
    border-bottom:1.5px solid var(--accent-hover,#CF8C46);padding-bottom:1px}
}

.nav-links a.nav-in{position:relative;font-weight:500}
.nav-links a.nav-in::after{content:"";position:absolute;left:0;right:0;bottom:-7px;
  height:2px;border-radius:2px;background:var(--accent-hover,#CF8C46);opacity:.55}
@media (max-width:820px){
  .nav-links a.nav-in::after{left:0;right:auto;width:26px;bottom:10px}
}

.nav-actie .nav-kort{display:none}
@media (max-width:480px){
  .nav-actie .nav-lang{display:none}
  .nav-actie .nav-kort{display:inline}
}
@media (max-width:400px){
  .nav-actie .btn,.nav-actie .knop{white-space:nowrap}
}


.voet .fijn a{border-bottom:1px solid rgba(255,255,255,.45)}
.voet .fijn a:hover{border-bottom-color:var(--accent-licht,#D9A066)}


.routes{padding:clamp(52px,6vw,84px) 0;--rt-rand:#E0D7C9}
.routes-kop{max-width:40em;margin:0 0 clamp(22px,3vw,30px)}
.routes h2{font-size:clamp(26px,3vw,36px);line-height:1.15;margin:0 0 .4em;color:#0E1F2E;font-weight:600}
.routes-lead{font-size:18.5px;line-height:1.6;color:#4A5A69;margin:0;max-width:36em}
.routes-kaarten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,28px);align-items:stretch}
.route-kaart{display:flex;flex-direction:column;border-radius:20px;padding:clamp(26px,3vw,38px);
  background:#fff;border:1px solid var(--rt-rand)}
.route-kaart--zelf{background:#DEDFD0;border-color:#CDCFBC}
.route-kaart--samen{border-top:3px solid #C17F3A}
.route-label{display:flex;align-items:center;gap:10px;font-size:12.5px;font-weight:500;letter-spacing:2.2px;
  text-transform:uppercase;color:#0E1F2E;margin:0 0 14px;max-width:none}
.route-label::before{content:"";width:24px;height:2px;background:#C17F3A;flex:none}
.route-kaart--zelf .route-label{color:#59634F}
.route-kaart h3{font-size:clamp(21px,2vw,24px);line-height:1.25;margin:0 0 10px;color:#0E1F2E;font-weight:600;text-wrap:balance}
.route-kaart p{font-size:16.5px;line-height:1.6;color:#0E1F2E;margin:0 0 22px;max-width:none}
.route-kaart .route-knop,.route-kaart .cj-inschrijf{margin-top:auto}
.route-knop{display:inline-block;width:fit-content;background:#C17F3A;color:#0E1F2E;font-family:inherit;font-size:15.5px;
  font-weight:600;line-height:1.3;padding:14px 26px;border-radius:12px;text-decoration:none;border:0;cursor:pointer;
  transition:background-color .16s ease,transform .16s ease}
.route-knop:hover{background:#CF8C46;transform:translateY(-1px)}
.route-knop:active{transform:translateY(0)}
.route-knop:focus-visible{outline:3px solid #0E1F2E;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.route-knop{transition:none}.route-knop:hover{transform:none}}
.routes--zwaar .route-kaart--zelf .route-knop{background:transparent;box-shadow:inset 0 0 0 1.5px #0E1F2E}
.routes--zwaar .route-kaart--zelf .route-knop:hover{background:#0E1F2E;color:#fff}
.routes--zwaar .routes-kaarten{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.route-kaart .cj-inschrijf{margin-bottom:0}
.route-kaart .cj-velden{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}
.route-kaart .cj-veld{flex:1 1 140px;min-width:0;display:flex}
.route-kaart .cj-veld input{width:100%;font-family:inherit;font-size:16px;font-weight:300;color:#0E1F2E;
  background:#fff;border:1px solid #CDCFBC;border-radius:12px;padding:13px 16px}
.route-kaart .cj-veld input::placeholder{color:#5C6B79;opacity:1}
.route-kaart .cj-veld input:focus-visible{outline:2px solid #87521C;outline-offset:1px}
.route-kaart .cj-velden .route-knop{flex:0 0 auto;white-space:nowrap}
.route-kaart .cj-velden .route-knop[disabled]{opacity:.7;cursor:default;transform:none}
.route-kaart .cj-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.route-kaart .cj-fout{color:#8F2F2F;font-size:14.5px;margin:10px 0 0;min-height:0}
.route-kaart .cj-fout:empty{display:none}
.route-kaart .cj-fijn{font-size:13.5px;line-height:1.5;color:#4A5A69;margin:12px 0 0}
.route-kaart .cj-inschrijf--klaar{border-left:2px solid #C17F3A;padding:2px 0 2px 18px}
.route-kaart .visueel-weg{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:860px){
  .routes-kaarten,.routes--zwaar .routes-kaarten{grid-template-columns:1fr}
}
@media (max-width:640px){
  .routes{padding:44px 0 52px}
  .route-kaart{padding:24px 22px}
  .route-kaart .route-knop{width:100%;text-align:center;min-height:48px}
  .route-kaart .cj-veld,.route-kaart .cj-velden .route-knop{flex:1 1 100%}
}
.cj-klaar-verder{font-size:15.5px;line-height:1.6;color:#0E1F2E;margin:10px 0 0}
.cj-klaar-verder a{color:#87521C;text-decoration:underline;text-underline-offset:3px;font-weight:500}
.cj-klaar-verder a:hover{color:#0E1F2E}

.voet .voet-koepel{display:block;color:#fff;font-weight:400;margin-bottom:6px}

.voet{padding:40px 0 28px}
.voet .voet-merk{padding-bottom:24px;margin-bottom:26px;gap:28px}
.voet .merk--voet img{height:48px}
.voet .voet-koepel{margin-bottom:4px}
.voet .voet-rijen{margin-bottom:26px;gap:22px 28px}
.voet h3{margin-bottom:10px}
.voet li{padding:4px 0}
.voet .fijn{padding-top:18px}
.voet a.voet-accent{color:var(--accent-licht,#D9A066)}
.voet a.voet-accent:hover{color:#fff}

@media (min-width:821px){
  .nav-links > a,.nav-groep > a{white-space:nowrap}
  .nav-logo,.nav-logo img{flex:none}
}
@media (min-width:821px) and (max-width:1060px){
  .nav-links{gap:18px}
  .nav-actie .nav-lang{display:none}
  .nav-actie .nav-kort{display:inline}
}
@media (min-width:821px) and (max-width:920px){
  .nav-links{gap:13px}
  .nav-links > a,.nav-groep > a{font-size:14.5px}
  .nav-inner{gap:14px}
}

.visueel-weg{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}
.extern-pijl{font-size:.85em}

h1,h2{text-wrap:balance}
h3,h4{text-wrap:pretty}

img[src*="-boekje-"],img[src*="waardenkaart-duo"],img[src*="waardenkaart-blad1"]{
  filter:drop-shadow(0 0 1px rgba(14,31,46,.35)) drop-shadow(0 8px 16px rgba(14,31,46,.14))}

.cj-privacy{font-size:12.5px;line-height:1.45;margin:6px 0 0;color:inherit;opacity:.85}
.cj-privacy a{color:inherit;text-decoration:underline;text-underline-offset:2px}

.knop.knop-binnenkort{background:transparent;color:inherit;border:1.5px solid currentColor;box-shadow:none;cursor:default}
.knop.knop-binnenkort:hover{background:transparent;transform:none}
