@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-display-regular.woff) format('woff')}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-display-medium.woff) format('woff')}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-display-semibold.woff) format('woff')}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(fonts/inter-display-bold.woff) format('woff')}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(fonts/inter-display-extrabold.woff) format('woff')}
@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(fonts/inter-display-black.woff) format('woff')}
@font-face{font-family:Inter;font-style:italic;font-weight:800;font-display:swap;src:url(fonts/inter-display-extrabolditalic.woff) format('woff')}
@font-face{font-family:Inter;font-style:italic;font-weight:900;font-display:swap;src:url(fonts/inter-display-blackitalic.woff) format('woff')}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
img{max-width:100%}
body{margin:0}
a{color:#A3161E}a:hover{color:#1D2330}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px;box-sizing:border-box}
.dash{height:6px;background:repeating-linear-gradient(90deg,#F6A821 0 34px,transparent 34px 56px);border-radius:3px}
.nav a{color:#F4EFE6;text-decoration:none;font-weight:500}
.nav a:hover{color:#F6A821}
.card:hover{transform:translateY(-3px)}
.fld{font:inherit;font-size:16px;padding:13px 16px;min-height:48px;border:2px solid #D6D0C4;border-radius:12px;background:#FFFFFF;color:#1D2330;box-sizing:border-box;width:100%}
.fld:focus{outline:none;border-color:#1D2330}
@media (max-width:760px){.hero-emb{width:360px!important;height:360px!important;right:-170px!important;top:auto!important;bottom:-150px;opacity:.35}.wrap{padding:0 20px}}

/* ===== Dynamische onderdelen (MyRoute-app) ===== */
body{font-family:Inter,system-ui,sans-serif}
.demo-banner{background:#F6A821;color:#1D2330;font-weight:700;font-size:14px;text-align:center;padding:10px 16px}
.mra-msg{background:#FFFFFF;border-radius:16px;padding:24px 28px;color:#3A4150}
.mra-attr{margin:8px 0 0;font-size:13px;color:#6B7280}.mra-attr a{color:#6B7280}
.muted{color:#4B5263;font-size:16px}.muted-sm{color:#4B5263;font-size:14px}
.tag{font-size:13px;font-weight:700;background:#F4EFE6;padding:4px 12px;border-radius:999px;color:#1D2330}
.badge{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.04em;padding:4px 10px;border-radius:999px;vertical-align:middle}
.badge-live{background:#F6A821;color:#1D2330}.badge-full{background:#1D2330;color:#FFFFFF}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font:inherit;font-weight:700;font-size:15px;padding:12px 22px;border-radius:999px;text-decoration:none;cursor:pointer;border:2px solid transparent}
.btn-sm{font-size:14px;padding:9px 16px;min-height:40px}
.btn-dark{background:#1D2330;color:#FFFFFF}.btn-dark:hover{background:#000;color:#FFFFFF}
.btn-red{background:#D7262E;color:#FFFFFF}.btn-red:hover{background:#A3161E;color:#FFFFFF}
.btn-outline{border-color:#1D2330;color:#1D2330;background:transparent}
.btn-outline-dark{border-color:#1D2330;color:#1D2330;background:#FFFFFF}
.btn:disabled{opacity:.6;cursor:wait}
.link-u{color:#1D2330;font-weight:700;text-decoration:none;border-bottom:3px solid #F6A821;padding-bottom:4px}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;color:#A3161E}
.eyebrow-amber{font-size:14px;letter-spacing:.22em;font-weight:700;color:#F6A821}
.skel{color:#9AA1AE}
/* volgende rit */
.next-card{background:#FFFFFF;border-radius:20px;box-shadow:0 24px 60px rgba(29,35,48,.18);display:flex;flex-wrap:wrap;align-items:stretch;overflow:hidden;min-height:150px}
.next-date{background:#D7262E;color:#FFFFFF;padding:28px 36px;display:flex;flex-direction:column;justify-content:center;min-width:160px}
.next-date span{font-size:14px;font-weight:700;letter-spacing:.18em}.next-date strong{font-size:56px;font-weight:900;font-style:italic;line-height:1}.next-date em{font-style:normal;font-size:18px;font-weight:600}
.next-body{flex:999 1 420px;padding:28px 36px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.next-title{font-size:30px;font-weight:800;line-height:1.15}
.next-meta{display:flex;flex-wrap:wrap;gap:8px 24px}
.next-cta{flex:1 1 220px;padding:28px 36px;display:flex;align-items:center}
/* kaarten home */
.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}
.ride-card{display:flex;flex-direction:column;background:#FFFFFF;border-radius:18px;overflow:hidden;text-decoration:none;color:#1D2330;transition:transform .2s}
.ride-card:hover{color:#1D2330}
.ride-img{width:100%;height:180px;object-fit:cover;display:block}
.ph{background:#2A3140;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ph img{width:46%;max-width:150px;opacity:.9}
.ride-card-body{padding:22px 26px 28px;display:flex;flex-direction:column;gap:10px}
.ride-card-title{font-size:24px;font-weight:800;line-height:1.2}
.date-sm{font-size:14px;font-weight:700;color:#A3161E;letter-spacing:.04em}
.ride-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.stat-num{font-size:clamp(40px,4.2vw,56px);font-weight:900;font-style:italic;line-height:1}
.stat-lbl{font-size:18px;font-weight:600;margin-top:8px}
/* ritagenda */
.filters{display:flex;flex-wrap:wrap;gap:12px 24px}
.pill-group{display:flex;flex-wrap:wrap;gap:8px}
.pill{font:inherit;font-weight:700;font-size:15px;padding:10px 18px;min-height:44px;border-radius:999px;border:2px solid #1D2330;background:transparent;color:#1D2330;cursor:pointer}
.pill[aria-pressed="true"]{background:#1D2330;color:#FFFFFF}
#mra-list{display:flex;flex-direction:column;gap:28px}
.month{display:flex;flex-direction:column;gap:14px}
.month h2{margin:4px 0 0;font-size:28px;font-weight:900;font-style:italic}
.ride-row{background:#FFFFFF;border-radius:16px;display:flex;flex-wrap:wrap;align-items:stretch;overflow:hidden}
.ride-date{width:104px;flex:none;background:#1D2330;color:#FFFFFF;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 0}
.ride-date.hl{background:#D7262E}
.ride-date span{font-size:13px;font-weight:700;letter-spacing:.14em}.ride-date strong{font-size:38px;font-weight:900;font-style:italic;line-height:1}
.ride-body{flex:999 1 300px;padding:20px 26px;display:flex;flex-direction:column;gap:6px}
.ride-body h3{margin:0;font-size:22px;font-weight:800;line-height:1.25}.ride-body h3 a{color:#1D2330;text-decoration:none}.ride-body h3 a:hover{color:#A3161E}
.ride-cta{flex:1 1 160px;padding:20px 26px;display:flex;align-items:center;justify-content:flex-end}
/* ritdetail */
.rit-hero{background:#1D2330;color:#FFFFFF;position:relative;overflow:hidden;background-size:cover;background-position:center}
.rit-hero.has-img .hero-emb{display:none}
.back{color:#F4EFE6;text-decoration:none;font-weight:600;font-size:15px}.back:hover{color:#F6A821}
.rit-grid{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
.rit-main{flex:999 1 600px;min-width:0;display:flex;flex-direction:column;gap:24px}
.rit-side{flex:1 1 300px}
.panel{background:#FFFFFF;border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:20px}
.facts{margin:0;display:flex;flex-direction:column;gap:16px}
.facts div{display:flex;flex-direction:column;gap:2px;padding-bottom:14px;border-bottom:1px solid #ECE6DA}
.facts dt{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#A3161E}
.facts dd{margin:0;font-weight:600}
.actions{display:flex;flex-wrap:wrap;gap:10px}
.desc{background:#FFFFFF;border-radius:20px;padding:28px 32px;white-space:pre-line;color:#3A4150;font-size:18px}
.sec-title{margin:8px 0 0;font-size:36px;font-weight:900;font-style:italic}
.day{display:flex;flex-direction:column;gap:12px}
.day h3{margin:8px 0 0;font-size:22px;font-weight:800}
.route-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.route-card{background:#FFFFFF;border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.route-map{display:block;width:100%;height:auto;aspect-ratio:400/260;background:#A3161E}
div.route-map{background:#2A3140}
.route-body{padding:20px 24px 24px;display:flex;flex-direction:column;gap:10px}
.route-body h4{margin:0;font-size:20px;font-weight:800}
.route-body p{margin:0}
.route-stats{display:flex;flex-wrap:wrap;gap:6px 18px;color:#4B5263;font-size:15px}.route-stats strong{color:#1D2330;font-size:18px}
@media (max-width:760px){.next-date strong{font-size:44px}.next-title{font-size:24px}.ride-date{width:84px}.ride-cta{justify-content:flex-start;padding-top:0}}
