/* Sportkantine thema: menu, footer en gewone pagina's. De lustrumblokken staan in sportkantine.css. */

@font-face{
  font-family:'Inter';
  src:url("fonts/inter-latin.woff2") format("woff2");
  font-weight:400 700;
  font-style:normal;
  font-display:swap;
}

html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;
}
*, *::before, *::after{box-sizing:border-box;}
img{max-width:100%;height:auto;}
.site-wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}

.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--gold);color:var(--navy);padding:10px 16px;font-weight:600;}
.skip-link:focus{left:12px;top:12px;}
a:focus-visible, button:focus-visible, [role=button]:focus-visible{outline:3px solid var(--gold);outline-offset:2px;}

/* ---------- MENU ---------- */
header.site-nav{
  position:sticky;top:0;z-index:50;
  background:rgba(251,249,244,0.94);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.admin-bar header.site-nav{top:32px;}
@media (max-width:782px){ .admin-bar header.site-nav{top:46px;} }
@media (max-width:600px){ .admin-bar header.site-nav{top:0;} }

/* menu over de volle breedte: naam helemaal links, menu-items op de plek waar de inhoud begint,
   taalknop helemaal rechts. Op smallere schermen schuiven de kolommen tegen elkaar aan. */
.nav-inner{
  padding:10px 28px;position:relative;
  display:grid;grid-template-columns:minmax(max-content,1fr) minmax(0,calc(var(--maxw) - 56px)) minmax(max-content,1fr);
  align-items:center;column-gap:24px;min-height:59px;
}
.brand{
  justify-self:start;text-decoration:none;white-space:nowrap;
  font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:700;color:var(--blue);font-size:17px;line-height:1.1;
}
.nav-actions{justify-self:end;}

nav.links ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:4px 20px;}
nav.links a{
  display:block;text-decoration:none;color:var(--ink);font-size:14.5px;font-weight:500;white-space:nowrap;
  padding:6px 2px;border-bottom:2px solid transparent;transition:border-color .15s ease, color .15s ease;
}
nav.links a:hover{border-color:var(--gold);color:var(--blue);}
nav.links .current-menu-item > a, nav.links a[aria-current="page"]{color:var(--blue);border-color:var(--gold);}

.nav-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.lang-switch{
  display:inline-flex;align-items:center;gap:3px;text-decoration:none;
  border:1.5px solid var(--blue-tint-line);border-radius:999px;padding:5px 11px;
  font-size:13px;font-weight:600;letter-spacing:.3px;color:#8a857f;background:var(--white);
  transition:border-color .15s ease;
}
.lang-switch:hover{border-color:var(--blue);}
.lang-switch .is-current{color:var(--blue);}
.lang-switch .lang-sep{color:var(--line);opacity:.8;}

.sk-confetti-rain{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:9999;}

.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;color:var(--blue);}
.menu-toggle svg{width:26px;height:26px;display:block;}

@media (max-width:1060px){
  nav.links a{font-size:13.5px;}
  nav.links ul{column-gap:14px;}
}
@media (max-width:880px){
  nav.links{display:none;}
  .menu-toggle{display:block;}
  .site-nav.open nav.links{
    display:block;position:absolute;top:100%;left:0;right:0;
    background:var(--paper);padding:8px 28px 16px;border-bottom:1px solid var(--line);
  }
  .site-nav.open nav.links ul{flex-direction:column;gap:0;}
  .site-nav.open nav.links a{padding:10px 0;font-size:15.5px;}
}

/* vangnet: pagina-inhoud per ongeluk in een Citaat-blok (Quote) geplakt; geen extra marges of streep */
blockquote.wp-block-quote:has(> .sk-lustrum), blockquote:has(> .sk-lustrum){
  margin:0 !important;padding:0 !important;border:0 !important;quotes:none;font:inherit;max-width:none;
}
blockquote:has(> .sk-lustrum)::before, blockquote:has(> .sk-lustrum)::after{content:none !important;}

/* ankers op de homepage niet onder het vaste menu laten verdwijnen */
.sk-lustrum section, .sk-lustrum .event-card{scroll-margin-top:72px;}

/* ---------- GEWONE PAGINA'S ---------- */
.sk-page{padding:64px 0 84px;}
.sk-page .site-wrap{max-width:780px;}
.sk-page + .sk-page{padding-top:0;}
.sk-page-title{
  font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:600;color:var(--blue);
  font-size:clamp(30px,4vw,42px);line-height:1.1;margin:0 0 24px;text-wrap:balance;
}
.sk-page-title a{color:inherit;text-decoration:none;}
.entry-content{font-size:16.5px;color:#4a4642;}
.entry-content h2, .entry-content h3{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--blue);line-height:1.2;margin:1.6em 0 .5em;}
.entry-content a{color:var(--blue);font-weight:600;}
.entry-content img{border-radius:10px;}
.entry-content table{border-collapse:collapse;width:100%;}
.entry-content td, .entry-content th{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;}

/* ---------- FOOTER ---------- */
.site-footer{background:var(--navy);color:#C3CAE0;padding:52px 0 30px;font-size:14.5px;line-height:1.6;}
.site-footer a{color:#fff;text-decoration:none;}
.site-footer a:hover{text-decoration:underline;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:32px;}
.footer-brand{display:flex;gap:14px;align-items:flex-start;}
.footer-brand img{width:46px;height:auto;filter:brightness(0) invert(1);}
.footer-brand b{display:block;color:#fff;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:17px;}
.footer-label{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--gold);font-weight:600;margin-bottom:6px;}
.footer-bottom{margin-top:40px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:13px;color:#9aa3c0;}
.site-footer .footer-grid a{overflow-wrap:anywhere;}

@media (max-width:880px){ .footer-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:640px){
  .nav-inner, .site-wrap{padding-left:18px;padding-right:18px;}
  .site-nav.open nav.links{padding-left:18px;padding-right:18px;}
  .footer-grid{grid-template-columns:1fr;gap:22px;}
}
