:root{
  --font-sans:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-weight-regular:400;
  --font-weight-medium:500;
  --font-weight-semibold:600;
  --font-weight-bold:700;
  --text-size-xs:.75rem;
  --text-size-sm:.875rem;
  --text-size-base:1rem;
  --text-size-lg:1.125rem;
  --line-height-body:1.65;
  --line-height-heading:1.12;
}

/* Eén lettertypefamilie voor de volledige site */
html,
body,
button,
input,
select,
textarea,
optgroup,
option{
  font-family:var(--font-sans)!important;
}

body{
  font-size:var(--text-size-base)!important;
  font-weight:var(--font-weight-regular)!important;
  line-height:var(--line-height-body)!important;
  letter-spacing:0!important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

h1,h2,h3,h4,h5,h6,
p,span,small,strong,b,em,i,
a,button,label,legend,summary,
li,dt,dd,th,td,
input,select,textarea{
  font-family:inherit!important;
}

/* Koppen */
h1,h2,h3,h4,h5,h6{
  margin-top:0;
  color:var(--navy,#062945);
  font-style:normal!important;
  text-transform:none!important;
  text-wrap:balance;
}

h1{
  font-weight:var(--font-weight-bold)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
}

h2{
  font-weight:var(--font-weight-bold)!important;
  line-height:1.1!important;
  letter-spacing:-.025em!important;
}

h3{
  font-weight:var(--font-weight-semibold)!important;
  line-height:1.22!important;
  letter-spacing:-.012em!important;
}

h4,h5,h6{
  font-weight:var(--font-weight-semibold)!important;
  line-height:var(--line-height-heading)!important;
  letter-spacing:0!important;
}

/* Gewone tekst */
p,li,dd,td{
  font-weight:var(--font-weight-regular)!important;
  letter-spacing:0!important;
}

strong,b{
  font-weight:var(--font-weight-semibold)!important;
}

small{
  font-weight:var(--font-weight-regular)!important;
  letter-spacing:0!important;
}

/* Navigatie, knoppen en formulieren */
nav a,
button,
.primary,
.secondary,
.header-listen,
.premium-button,
.news-read-button,
.news-card-link,
.request-action,
.admin-primary-action,
.admin-submit-button{
  font-weight:var(--font-weight-semibold)!important;
  letter-spacing:0!important;
}

label,
.field label,
.form-grid label,
.admin-form-grid label,
.admin-editor-form label{
  font-weight:var(--font-weight-semibold)!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

input,
select,
textarea{
  font-size:.9375rem!important;
  font-weight:var(--font-weight-regular)!important;
  line-height:1.45!important;
  letter-spacing:0!important;
}

/* Kleine labels: beperkt en consequent */
.eyebrow,
.section-tag,
.section-header>div>span,
.player-kicker,
.news-meta-line,
.admin-eyebrow,
.admin-kicker,
.admin-nav-section,
.admin-nav-label,
.contact-type,
.admin-status-badge{
  font-size:.7rem!important;
  font-weight:var(--font-weight-semibold)!important;
  line-height:1.25!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}

/* Publieke navigatie */
.nav-wrap nav a{
  font-size:.75rem!important;
  font-weight:var(--font-weight-semibold)!important;
  line-height:1.2!important;
  letter-spacing:.01em!important;
}

/* Nieuws */
.article-copy,
.article-copy p,
.article-intro,
.article-byline,
.article-share-row,
.article-transparency-box,
.article-delta-box{
  font-family:inherit!important;
}

.article-copy p{
  font-size:1.0625rem!important;
  font-weight:var(--font-weight-regular)!important;
  line-height:1.75!important;
  letter-spacing:0!important;
}

.news-feature-copy h2,
.news-card-copy h3,
.regional-news-card h3{
  font-weight:var(--font-weight-bold)!important;
}

/* Player en kaarten */
.premium-player-body h2,
.delta-compact-track h2{
  font-weight:var(--font-weight-bold)!important;
}

.card-body h2,
.contact-card h2,
.request-information h2{
  font-weight:var(--font-weight-bold)!important;
}

/* Admin volledig gelijk trekken */
.admin-body,
.admin-body *{
  font-family:var(--font-sans)!important;
}

.admin-body{
  font-size:.9375rem!important;
  font-weight:var(--font-weight-regular)!important;
  line-height:1.55!important;
}

.admin-body h1{
  font-weight:var(--font-weight-bold)!important;
  letter-spacing:-.032em!important;
}

.admin-body h2{
  font-weight:var(--font-weight-bold)!important;
  letter-spacing:-.02em!important;
}

.admin-nav a,
.admin-site-link,
.admin-user-details strong,
.admin-topbar strong{
  font-weight:var(--font-weight-semibold)!important;
  letter-spacing:0!important;
}

.admin-user-details span,
.admin-topbar small,
.admin-panel-count,
.admin-stat-card small,
.admin-stat-card>span{
  font-weight:var(--font-weight-regular)!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.admin-form-grid input,
.admin-form-grid select,
.admin-form-grid textarea,
.admin-editor-form input,
.admin-editor-form select,
.admin-editor-form textarea{
  font-size:.875rem!important;
  font-weight:var(--font-weight-regular)!important;
}

/* Mobiel */
@media(max-width:850px){
  body{
    font-size:.9375rem!important;
  }

  .nav-wrap nav a{
    font-size:.875rem!important;
  }
}

@media(max-width:620px){
  h1{
    letter-spacing:-.028em!important;
  }

  h2{
    letter-spacing:-.018em!important;
  }

  .article-copy p{
    font-size:1rem!important;
    line-height:1.7!important;
  }

  input,
  select,
  textarea{
    font-size:1rem!important;
  }

  .admin-body{
    font-size:.875rem!important;
  }
}


/* ==========================================================================
   DEFINITIEVE PROFIELKAARTCORRECTIE
   ========================================================================== */
.admin-sidebar .admin-user-card{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 34px!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:12px!important;
}

.admin-sidebar .admin-user-card>.admin-avatar{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:12px!important;
  color:#fff!important;
  background:linear-gradient(145deg,#0d76df,#4cc4f0)!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1!important;
}

.admin-sidebar .admin-user-card>.admin-user-details{
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  color:inherit!important;
  background:transparent!important;
  box-shadow:none!important;
  line-height:1.2!important;
}

.admin-sidebar .admin-user-details>strong{
  display:block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#fff!important;
  background:transparent!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.25!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.admin-sidebar .admin-user-details>small{
  display:block!important;
  width:auto!important;
  margin:3px 0 0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#86aabd!important;
  background:transparent!important;
  font-size:9px!important;
  font-weight:400!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  white-space:nowrap!important;
}

.admin-sidebar .admin-user-card>.admin-logout-button{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:10px!important;
  color:#9eb9c8!important;
  background:rgba(255,255,255,.055)!important;
  box-shadow:none!important;
  font-size:15px!important;
  line-height:1!important;
}

.admin-sidebar .admin-user-card>.admin-logout-button:hover{
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
}

@media(max-width:480px){
  .admin-sidebar .admin-user-card{
    grid-template-columns:40px minmax(0,1fr) 32px!important;
    gap:9px!important;
    padding:10px!important;
  }

  .admin-sidebar .admin-user-card>.admin-avatar{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    max-width:40px!important;
  }

  .admin-sidebar .admin-user-card>.admin-logout-button{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    max-width:32px!important;
  }
}


/* Mobiele navigatietypografie */
@media(max-width:850px){
  .nav-wrap nav a{
    font-family:var(--font-sans)!important;
    font-size:14px!important;
    font-weight:600!important;
    line-height:1.2!important;
    letter-spacing:0!important;
    text-transform:none!important;
  }
}
@media(max-width:520px){
  .nav-wrap nav a{font-size:13px!important}
}


/* Compacte mobiele navigatietypografie */
@media(max-width:850px){
  .nav-wrap nav a{
    font-size:13px!important;
    font-weight:600!important;
    line-height:1.15!important;
  }
}
@media(max-width:420px){
  .nav-wrap nav a{
    font-size:12px!important;
  }
}
