:root{--navy:#082d52;--blue:#086db3;--yellow:#ffd400;--ink:#102b45;--muted:#5f7080;--paper:#f5f7f8;--white:#fff;--line:#d8e0e6;--head:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif;--wrap:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:3px}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--head);font-weight:700;line-height:.98;letter-spacing:-.02em}.wrap{width:min(var(--wrap),calc(100% - 48px));margin-inline:auto}.skip{position:fixed;z-index:99;top:-80px;left:12px;background:#fff;padding:12px}.skip:focus{top:12px}.topline{background:#041c35;color:#dce7ef;font-size:10px;letter-spacing:.13em}.topline .wrap{height:32px;display:flex;align-items:center;justify-content:space-between}.topline strong{color:var(--yellow)}.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e4e9ed}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;line-height:.9}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--yellow);font-size:24px;font-family:var(--head);font-style:italic;font-weight:800}.brand-name{font:800 27px/.83 var(--head);letter-spacing:-.02em;color:var(--navy)}.brand-name span{display:block;color:var(--blue);font-size:16px;letter-spacing:.12em;margin-top:5px}.nav{display:flex;align-items:center;gap:27px}.nav a{font-size:12px;font-weight:700;text-decoration:none}.nav a:not(.nav-cta):hover{color:var(--blue)}.nav-toggle{display:none;border:0;background:transparent;color:var(--navy);font-weight:700}.button{display:inline-flex;gap:22px;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--yellow);border:0;border-radius:3px;color:var(--navy);font-size:12px;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .18s,background .18s}.button:hover{background:#ffe34c;transform:translateY(-2px)}.button.navy{background:var(--navy);color:#fff}.button.navy:hover{background:#124b78}.button .arrow{font-size:19px;line-height:1}.hero{background:var(--navy);color:white;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 20%,#1b5480 0,transparent 39%),linear-gradient(110deg,#071f3a 12%,#082d52 57%,#0a4778);pointer-events:none}.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.04fr .96fr;gap:68px;align-items:center;min-height:610px;padding-block:58px}.hero-copy{padding-block:25px}.kicker{display:flex;align-items:center;gap:10px;color:#c9d8e5;font-size:10px;letter-spacing:.16em;font-weight:700;text-transform:uppercase}.kicker:before{content:'';width:28px;height:3px;background:var(--yellow)}.hero h1{font-size:clamp(68px,8.6vw,116px);text-transform:uppercase;margin-top:24px;max-width:700px}.hero h1 em{font-style:normal;color:var(--yellow)}.hero-intro{font-size:17px;color:#d6e3ee;margin-top:20px;max-width:460px}.hero-ctas{display:flex;gap:15px;align-items:center;margin-top:30px;flex-wrap:wrap}.hero-secondary{color:#fff;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #ffffff88;padding:10px 0}.hero-stats{display:flex;gap:28px;margin-top:46px;padding-top:22px;border-top:1px solid #ffffff30}.hero-stats div{display:flex;align-items:baseline;gap:8px}.hero-stats strong{font:700 30px/.9 var(--head);color:var(--yellow)}.hero-stats span{font-size:9px;line-height:1.3;color:#c6d6e2;text-transform:uppercase;letter-spacing:.08em}.poster-frame{width:min(100%,390px);height:510px;justify-self:end;position:relative;padding:10px;background:#fff;transform:rotate(1.5deg);box-shadow:0 26px 60px #00122588}.poster-frame img{width:100%;height:100%;object-fit:cover;object-position:center;border:1px solid #e4e9ed}.poster-sticker{position:absolute;left:-32px;bottom:35px;background:var(--yellow);color:var(--navy);padding:13px 17px;font:700 18px/1 var(--head);transform:rotate(-4deg);box-shadow:0 6px 18px #00122544}.section{padding-block:88px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head h2,.page-head h1{font-size:clamp(46px,6vw,72px);text-transform:uppercase;color:var(--navy);margin-top:10px}.section-head>p{max-width:390px;font-size:13px;color:var(--muted);line-height:1.8}.eyebrow{color:var(--blue);font-size:10px;letter-spacing:.15em;font-weight:800;text-transform:uppercase}.season-panel{background:#e8f0f4}.calendar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.event-card{background:#fff;padding:23px 22px;display:grid;grid-template-columns:56px 1fr;gap:17px;min-height:125px;border-top:3px solid var(--navy);text-decoration:none;transition:transform .18s,box-shadow .18s}.event-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #082d5218}.event-card.is-next-event{border-top-color:var(--yellow);background:#fffbea}.date-block{background:var(--navy);color:#fff;width:55px;height:67px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.event-card.is-next-event .date-block{background:var(--yellow);color:var(--navy)}.date-block strong{font:700 31px/.95 var(--head)}.date-block span{font-size:9px;letter-spacing:.08em;margin-top:6px}.event-card h3{font-size:22px;line-height:1}.event-card p{margin-top:7px;color:var(--muted);font-size:10px}.card-arrow{color:var(--blue);font-size:16px;font-weight:700;display:inline-block;margin-top:8px}.season-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.next-event{background:var(--yellow);padding:26px 30px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;margin-top:42px}.next-event time{font:700 40px/.85 var(--head);color:var(--navy);text-align:center;white-space:nowrap}.next-event time span{display:block;font:700 10px/1 var(--body);letter-spacing:.1em;margin-top:8px}.next-event h3{font-size:28px;color:var(--navy)}.next-event p{font-size:11px;color:#435a70;margin-top:4px}.next-event .button{background:var(--navy);color:#fff}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature-copy h2{font-size:clamp(46px,5.4vw,68px);text-transform:uppercase;margin-top:12px}.feature-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.85;max-width:520px;margin-top:19px}.feature-copy .button{margin-top:22px}.feature-visual{min-height:330px;background:linear-gradient(135deg,#082d52,#0d68a3);position:relative;overflow:hidden;padding:35px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.feature-visual:before{content:'2027';position:absolute;top:-57px;right:-13px;font:800 190px/.9 var(--head);color:#ffffff15;letter-spacing:-.05em}.feature-visual:after{content:'';position:absolute;width:300px;height:300px;border:2px dashed #ffd40088;border-radius:50%;top:-112px;left:-60px}.feature-visual strong{position:relative;z-index:1;font:700 36px/.94 var(--head);max-width:320px;text-transform:uppercase}.feature-visual span{position:relative;z-index:1;font-size:10px;letter-spacing:.14em;color:var(--yellow);margin-top:14px}.info-strip{background:var(--navy);color:#fff;padding-block:42px}.info-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.info-strip h2{font-size:32px}.info-strip p{font-size:12px;color:#c7d6e2;margin-top:6px}.page-head{background:var(--navy);color:#fff;padding:68px 0 62px}.page-head .eyebrow{color:var(--yellow)}.page-head h1{color:#fff;font-size:clamp(48px,7vw,82px)}.page-head p{max-width:680px;font-size:14px;color:#d5e2ec;margin-top:14px}.page-content{padding-block:54px 90px}.page-content h2{font-size:38px;color:var(--navy);margin:35px 0 13px}.page-content p{font-size:14px;color:#526777;max-width:780px;margin-top:12px}.page-content .calendar-grid{margin-top:26px}.notice{background:#fff;border-left:4px solid var(--yellow);padding:17px 20px;color:#42596d;font-size:12px;line-height:1.7;margin-top:25px}.poster-inline{display:grid;grid-template-columns:minmax(200px,330px) 1fr;gap:36px;align-items:center;margin-top:40px}.poster-inline img{width:100%;aspect-ratio:0.68;object-fit:cover;box-shadow:0 14px 35px #082d5222}.poster-inline p{font-size:12px}.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.about-points article{padding:22px;background:#e8f0f4;border-top:3px solid var(--yellow)}.about-points strong{font:700 24px/1 var(--head);color:var(--navy)}.about-points p{font-size:11px;margin-top:8px}.contact-card{background:#fff;padding:26px;max-width:650px;margin-top:25px;border-top:4px solid var(--yellow)}.contact-card a{color:var(--blue);font-weight:700}.contact-card p{font-size:13px}.event-hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.event-hero-meta span{background:#ffffff18;border:1px solid #ffffff40;padding:8px 12px;font-size:11px}.event-hero-meta strong{color:var(--yellow)}.event-detail{display:grid;grid-template-columns:1fr .8fr;gap:45px;align-items:start}.event-facts{background:#fff;padding:25px;border-top:4px solid var(--yellow)}.event-facts h2{font-size:30px;margin:0 0 14px}.fact{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.fact span{display:block;color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.fact strong{display:block;margin-top:3px;color:var(--navy)}.event-detail .notice{margin-top:0}.footer{background:#041c35;color:#fff;padding:38px 0 20px}.footer-main{display:flex;justify-content:space-between;gap:25px;align-items:center;padding-bottom:26px}.footer-brand{font:800 27px/.85 var(--head);text-decoration:none}.footer-brand span{display:block;color:var(--yellow);font-size:15px;letter-spacing:.1em;margin-top:5px}.footer p{font-size:10px;color:#c1ced8}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{font-size:10px;text-decoration:none;color:#dce5eb}.footer-bottom{border-top:1px solid #ffffff26;padding-top:17px;display:flex;justify-content:space-between;gap:16px;color:#b7c6d2;font-size:9px}.footer-bottom a{color:#fff}.mobile-only{display:none}
@media(max-width:900px){.hero-inner{grid-template-columns:1fr .8fr;gap:32px;min-height:560px}.hero h1{font-size:78px}.poster-frame{height:440px}.calendar-grid{grid-template-columns:repeat(2,1fr)}.section{padding-block:70px}.feature-grid{gap:35px}}
@media(max-width:680px){.topline .wrap{height:29px;font-size:8px}.nav-wrap{height:70px}.brand-mark{width:39px;height:39px}.brand-name{font-size:23px}.brand-name span{font-size:13px}.nav-toggle{display:block;padding:10px 0 10px 12px}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:10px 24px 22px;box-shadow:0 18px 26px #082d5222;align-items:stretch;gap:0}.nav.open{display:flex;flex-direction:column}.nav a:not(.nav-cta){padding:14px 0;border-bottom:1px solid var(--line)}.nav-cta{margin-top:14px}.hero-inner{grid-template-columns:1fr;min-height:unset;padding-block:48px 35px;gap:34px}.hero h1{font-size:clamp(63px,18vw,90px);margin-top:18px}.hero-intro{font-size:14px}.hero-stats{margin-top:30px;gap:19px}.hero-stats strong{font-size:25px}.hero-stats span{font-size:8px}.poster-frame{justify-self:center;width:min(78vw,330px);height:430px;margin-right:12px}.poster-sticker{left:-20px;bottom:24px;font-size:15px}.section{padding-block:54px}.section-head{display:block;margin-bottom:24px}.section-head h2,.page-head h1{font-size:48px}.section-head>p{margin-top:15px;font-size:12px}.calendar-grid{grid-template-columns:1fr;gap:10px}.event-card{min-height:97px;padding:16px}.event-card h3{font-size:21px}.next-event{grid-template-columns:auto 1fr;gap:15px;padding:20px;margin-top:28px}.next-event time{font-size:31px}.next-event .button{grid-column:1/-1;justify-self:start}.feature-grid{grid-template-columns:1fr;gap:25px}.feature-copy h2{font-size:49px}.feature-visual{min-height:250px}.info-strip .wrap{display:block}.info-strip .button{margin-top:18px}.info-strip h2{font-size:28px}.page-head{padding:48px 0}.page-head p{font-size:12px}.page-content{padding-block:36px 60px}.page-content h2{font-size:32px}.poster-inline{grid-template-columns:1fr;gap:18px}.poster-inline img{width:min(75%,310px);margin-inline:auto}.about-points{grid-template-columns:1fr}.event-detail{grid-template-columns:1fr;gap:18px}.event-facts{padding:20px}.footer-main{align-items:flex-start;flex-direction:column;gap:19px}.footer-bottom{flex-direction:column;gap:7px}.mobile-only{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Retain the official Corsa Campagnolo and Van Eyck Sport header mark. */
.brand img{display:block;width:clamp(235px,27vw,310px);height:auto}
.footer-brand{display:block;flex:none;width:270px;max-width:100%}
.footer-logo{display:block;width:100%;height:auto}
.footer{background:var(--navy)}
@media(max-width:680px){.brand img{width:min(245px,62vw)}}

/* Laat het officiële logo visueel doorlopen in de Corsa-kopbalk. */
.topline{background:#001b36;color:#dce7ef;border-bottom:2px solid var(--yellow)}
.header{background:#002e5f;border-bottom:1px solid #ffffff25}
.brand img{width:clamp(235px,25vw,290px)}
.nav a:not(.nav-cta){color:#fff}
.nav a:not(.nav-cta):hover{color:var(--yellow)}
.nav-toggle{color:#fff}
.footer{background:#002e5f}
@media(max-width:680px){
  .header{background:#002e5f}
  .nav{background:#002e5f}
  .nav a:not(.nav-cta){color:#fff;border-bottom:1px solid #ffffff26}
  .nav a:not(.nav-cta):hover{color:var(--yellow)}
  .brand img{width:min(245px,62vw)}
}

/* Fijnere maatvoering voor een compacte, herkenbare Corsa-masthead. */
.topline{font-size:9px}
.topline .wrap{height:25px}
.nav-wrap{height:88px;gap:24px}
.brand{flex:0 1 auto;min-width:0}
.brand img{width:min(315px,28vw)}
.nav{gap:22px}
.nav a:not(.nav-cta){font-size:12px;letter-spacing:.02em}
.nav-cta{margin-left:3px;padding:13px 16px}
@media(max-width:900px){.nav-wrap{height:82px}.brand img{width:min(285px,30vw)}}
@media(max-width:680px){
  .topline .wrap{height:24px;font-size:8px}
  .nav-wrap{height:68px;gap:16px}
  .brand img{width:min(235px,55vw)}
  .nav-toggle{padding:9px 11px;border:1px solid #ffffff55;border-radius:3px;font-size:11px;letter-spacing:.04em}
  .nav{top:68px}
}

.event-quick{margin-top:3px!important;color:var(--blue)!important;font-size:9px!important;font-weight:700;line-height:1.35!important}
.event-page-head .event-hero-meta{margin-top:22px}
.event-main h2{margin:10px 0 15px}
.event-main h3{font-size:23px;color:var(--navy)}
.event-address{background:#fff;padding:17px 20px;border-left:4px solid var(--yellow);margin:19px 0 16px!important}
.event-address a{color:var(--navy);font-weight:700;text-decoration:none}
.event-address a:hover{text-decoration:underline}
.ride-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.metric{background:#e8f0f4;padding:17px 18px;border-top:3px solid var(--blue)}
.metric span,.metric small{display:block;color:var(--muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.metric strong{display:block;color:var(--navy);font:700 26px/1.05 var(--head);margin:6px 0}
.metric small{font-size:9px;letter-spacing:0;text-transform:none;line-height:1.5}
.route-title{margin:25px 0 11px!important}
.route-list{display:flex;flex-wrap:wrap;gap:9px}
.route-chip{display:flex;align-items:center;gap:11px;background:#fff;padding:11px 14px;border-bottom:2px solid var(--yellow)}
.route-chip span{font-size:10px;color:var(--muted)}
.route-chip strong{font:700 22px/1 var(--head);color:var(--navy)}
.distance-note{font-size:10px!important;margin-top:11px!important}
.event-facts a{color:var(--blue)}
.event-source-note{font-size:10px!important;line-height:1.6!important;margin-top:17px!important;padding-top:13px;border-top:1px solid var(--line)}
.event-extras{margin-top:35px;padding:27px 30px;background:#e8f0f4;border-top:4px solid var(--yellow)}
.event-extras h2{font-size:34px;color:var(--navy);margin:8px 0 16px}
.benefit-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;list-style:none;margin:0;padding:0}
.benefit-list li{background:#fff;padding:16px 17px;font-size:12px;line-height:1.6;border-top:2px solid var(--blue)}
.event-note-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.event-note-grid article{background:#fff;padding:18px 20px}
.event-note-grid h3{font-size:22px;color:var(--navy)}
.event-note-grid p{font-size:11px;line-height:1.7;margin-top:8px}
.event-note-grid a{color:var(--blue);font-weight:700}
.back-link{margin-top:25px!important}
@media(max-width:680px){
  .ride-metrics,.event-note-grid{grid-template-columns:1fr}
  .event-extras{padding:21px 18px}
  .event-extras h2{font-size:29px}
  .benefit-list{grid-template-columns:1fr;gap:8px}
  .route-chip{flex:1 1 140px;justify-content:space-between}
}


/* Gele seizoensmarkering: altijd de eerstvolgende rit. */
.event-card{position:relative}
.event-card.is-next-event{border-top-color:var(--yellow);background:#fffbea;box-shadow:0 10px 25px #082d5220}
.event-card.is-next-event .date-block{background:var(--yellow);color:var(--navy)}
.event-badge{display:inline-flex;align-items:center;width:max-content;margin:8px 0 0;padding:4px 7px;background:var(--yellow);color:var(--navy);font-size:8px;font-weight:800;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}
.event-card.is-next-event .card-arrow{font-weight:800}
.event-badge{display:none}
.event-card.is-next-event .event-badge{display:inline-flex}

/* Leesbaarheid: comfortabelere standaardmaten voor alle bezoekers. */
body{font-size:17px;line-height:1.65}
.topline{font-size:12px}
.nav a{font-size:15px}
.button{font-size:15px}
.kicker,.eyebrow{font-size:13px}
.hero-intro{font-size:18px}
.hero-secondary{font-size:15px}
.hero-stats span{font-size:13px}
.section-head>p,.next-event p,.feature-copy>p:not(.eyebrow),.info-strip p,.page-head p,.page-content p,.notice,.poster-inline p,.about-points p,.contact-card p{font-size:16px}
.date-block span{font-size:13px}
.event-card p,.event-quick{font-size:14px!important;line-height:1.5}
.metric span,.metric small,.route-chip span{font-size:14px}
.distance-note,.event-source-note{font-size:14px!important;line-height:1.65!important}
.event-hero-meta span{font-size:14px}
.fact{font-size:16px}
.fact span{font-size:13px}
.benefit-list li{font-size:15px}
.event-note-grid p{font-size:15px}
.event-badge{font-size:12px}
.footer p,.footer-links a{font-size:14px}
.footer-bottom{font-size:13px}
@media(max-width:680px){
  .topline{font-size:10px}
  .topline .wrap{font-size:10px}
  .nav-toggle{font-size:15px}
  .hero-intro,.page-head p{font-size:16px}
  .section-head>p{font-size:15px}
}


/* Sponsoroverzicht gebruikt uitsluitend de officiële 2027-kalender. */
.sponsors-section{background:#e8f0f4}
.sponsor-strip{display:block;height:clamp(150px,18vw,210px);overflow:hidden;background:#fff;border-top:4px solid var(--yellow);border-bottom:4px solid var(--navy);box-shadow:0 12px 30px #082d5218}
.sponsor-strip img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 80%}
.sponsors-note{font-size:14px!important;margin-top:12px!important}
@media(max-width:680px){.sponsor-strip{height:110px}.sponsor-strip img{object-position:center 80%}}
.sponsors-section{background:#e8f0f4}
.sponsor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}
.sponsor-card{position:relative;min-height:148px;padding:18px 20px 16px;background:#fff;border:1px solid #d7e1e9;border-top:4px solid #ffc928;border-radius:8px;box-shadow:0 8px 22px #0927460b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#092746;text-align:center;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
a.sponsor-card:hover,a.sponsor-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 26px #09274620;border-color:#064a87;outline:3px solid #064a8740;outline-offset:2px}
.sponsor-card img{display:block;width:100%;height:72px;object-fit:contain}
.sponsor-name{font-size:18px;font-weight:700;line-height:1.25}
.sponsor-outbound{position:absolute;right:12px;top:8px;color:#064a87;font-size:20px;font-weight:700}
.sponsor-unlinked{border-top-color:#9aabb9;color:#092746}
.sponsors-note{font-size:15px!important;margin-top:16px!important;color:#465b6d}
@media(max-width:900px){.sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sponsor-card{min-height:136px;padding:14px 12px}.sponsor-card img{height:60px}.sponsor-name{font-size:17px}}
@media(max-width:520px){.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sponsor-card{min-height:128px;padding:12px 10px}.sponsor-card img{height:56px}}


.calendar-downloads{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
@media(max-width:680px){.calendar-downloads{justify-content:flex-start;margin-top:18px}.calendar-downloads .button{width:100%;max-width:360px}}


/* Duidelijke hoofdnavigatie en een verzorgde kalenderposter-sectie. */
.nav a:not(.nav-cta){font-size:16px;line-height:1.3}
.nav{gap:24px}
.poster-inline{grid-template-columns:minmax(280px,410px) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center;margin-top:52px;padding:clamp(24px,4vw,46px);background:#fff;border-top:5px solid var(--yellow);box-shadow:0 16px 38px #082d5214}
.poster-inline img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border:1px solid var(--line);box-shadow:0 10px 28px #082d5225}
.poster-inline h2{font-size:clamp(40px,5vw,60px);line-height:.96;margin-top:12px}
.poster-inline .calendar-downloads{justify-content:flex-start;margin-top:24px}
@media(max-width:900px){.poster-inline{grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:28px;padding:26px}}
@media(max-width:680px){
  .nav a:not(.nav-cta){font-size:17px;line-height:1.4;padding:16px 0}
  .nav-cta{font-size:15px}
  .poster-inline{grid-template-columns:1fr;gap:25px;margin-top:34px;padding:22px 18px}
  .poster-inline img{width:min(100%,380px);margin-inline:auto}
  .poster-inline h2{font-size:44px}
  .poster-inline .calendar-downloads{flex-direction:column;align-items:stretch;margin-top:20px}
  .poster-inline .calendar-downloads .button{width:100%;max-width:none}
}


/* De kalenderposter als duidelijke uitnodiging naar het rittenoverzicht. */
.poster-frame{width:min(100%,450px);height:auto;justify-self:end;padding:22px;background:linear-gradient(145deg,#0c4d7a,#052643);border:1px solid #ffffff40;transform:none;box-shadow:0 26px 60px #00122570;display:flex;flex-direction:column;gap:18px}
.poster-frame img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;border:0;box-shadow:0 14px 32px #00122555}
.poster-label{color:var(--yellow);font-size:14px;font-weight:800;letter-spacing:.12em;line-height:1.35}
.poster-details{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#fff}
.poster-details strong{font:700 27px/1.02 var(--head)}
.poster-details a{display:inline-flex;align-items:center;gap:10px;padding:13px 15px;background:var(--yellow);color:var(--navy);font-size:15px;font-weight:800;text-decoration:none;white-space:nowrap}
.poster-details a:hover{background:#ffe34c}
@media(max-width:900px){.poster-frame{width:min(100%,400px);padding:18px}.poster-details{align-items:flex-start;flex-direction:column;gap:12px}.poster-details strong{font-size:25px}}
@media(max-width:680px){.poster-frame{width:min(100%,380px);height:auto;justify-self:center;margin:0;padding:16px;gap:14px}.poster-details{flex-direction:row;align-items:center;gap:12px}.poster-details strong{font-size:23px}.poster-details a{font-size:14px;padding:12px}.poster-label{font-size:12px}}

/* Scherpe sponsorlogo's op rustige, egale kaarten. */
.sponsors-section{background:#fff}
.sponsor-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}
.sponsor-card{min-height:122px;padding:18px 18px;background:#fff;border:1px solid #e8edf1;border-radius:12px;box-shadow:0 5px 18px #0927460a;gap:8px}
.sponsor-card img{display:block;width:100%;height:62px;object-fit:contain;background:transparent}
.sponsor-mark{display:flex;align-items:center;justify-content:center;width:100%;height:64px}
.sponsor-mark img{width:100%;height:100%;object-fit:contain}
.sponsor-mark-dark{max-width:190px;padding:10px 18px;background:#092746;border-radius:10px}
.sponsor-name{font-size:16px;font-weight:700;line-height:1.2}
.sponsor-text-only .sponsor-name{font-size:19px}
.sponsor-name:not(.sponsor-name-visible){display:none}
.sponsor-unlinked{border-color:#e8edf1;color:#092746}
.sponsor-outbound{right:10px;top:8px;color:#8193a2;font-size:17px}
@media(max-width:900px){.sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sponsor-card{min-height:112px;padding:13px 10px}.sponsor-card img{height:58px}.sponsor-name{font-size:15px}}
@media(max-width:520px){.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sponsor-card{min-height:104px;padding:12px 9px}.sponsor-mark,.sponsor-card img{height:52px}.sponsor-name{font-size:14px}}
.sponsor-card:nth-last-child(2){grid-column:2}.sponsor-card:last-child{grid-column:3}@media(max-width:900px){.sponsor-card:nth-last-child(2),.sponsor-card:last-child{grid-column:auto}}
