*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
--zwart:    #111111;
--rood:     #cc0000;
--grijs:    #f4f4f4;
--midgrijs: #888888;
--wit:      #ffffff;
--serif:    'Georgia', 'Times New Roman', serif;
--sans:     'Helvetica Neue', Arial, sans-serif;
--max:      1200px;
} html { font-size: 16px; scroll-behavior: smooth; background: var(--zwart); }
body {
font-family: var(--sans);
background: var(--wit);
color: var(--zwart);
line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--rood); }
img { max-width: 100%; height: auto; display: block; } .topbalk {
background: var(--zwart);
color: var(--wit);
font-size: 0.75rem;
padding: 0.4rem 0;
text-align: center;
letter-spacing: 0.05em;
font-family: var(--sans);
}
.topbalk-slogan { display: none; } .site-header {
background: var(--zwart);
color: var(--wit);
border-bottom: 4px solid var(--rood);
padding: 1.5rem 0 1rem; background-size: cover;
background-position: center;
}
.header-inner {
max-width: var(--max);
margin: 0 auto;
padding: 0 1.5rem;
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
position: relative;
}
.site-branding { flex: 1; text-align: center; }
.site-title {
font-family: var(--serif);
font-size: clamp(2.2rem, 6vw, 4rem);
font-weight: 700;
color: var(--wit);
letter-spacing: -0.02em;
line-height: 1;
display: block;
text-transform: lowercase;
}
.site-title span { color: var(--rood); }
.site-tagline {
color: var(--midgrijs);
font-size: 0.8rem;
letter-spacing: 0.12em;
text-transform: uppercase;
margin-top: 0.3rem;
} .site-nav {
background: #1a1a1a;
}
.nav-inner {
max-width: var(--max);
margin: 0 auto;
padding: 0 1.5rem;
display: flex;
gap: 0;
}
.site-nav a {
display: block;
color: #ccc;
font-size: 0.8rem;
font-weight: 600;
letter-spacing: 0.08em;
text-transform: uppercase;
padding: 0.7rem 1rem;
transition: color 0.15s, background 0.15s;
}
.site-nav a:hover,
.site-nav a.actief {
color: var(--wit);
background: var(--rood);
} .nav-magazine { display: none; } .nav-tip {
margin-left: auto;
font-style: italic;
font-weight: 400 !important;
letter-spacing: .03em !important;
color: #e06060 !important;
text-transform: none !important;
opacity: .85;
}
.nav-tip:hover { opacity: 1; background: transparent !important; color: var(--rood) !important; }
html.nachtmodus .nav-tip { color: #e06060 !important; } .nav-dropdown {
position: relative;
}
.nav-dropdown-trigger {
display: flex !important;
align-items: center;
gap: 0.3rem;
cursor: pointer;
}
.nav-dropdown-pijl {
font-size: 0.7em;
opacity: 0.7;
transition: transform 0.2s;
}
.nav-dropdown:hover .nav-dropdown-pijl {
transform: rotate(180deg);
}
.nav-dropdown-menu {
display: none;
position: absolute;
top: 100%;
left: 0;
background: #1a1a1a;
border: 1px solid #333;
border-top: 2px solid var(--rood);
min-width: 200px;
z-index: 999;
box-shadow: 0 4px 12px rgba(0,0,0,0.4);
}
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown-menu.open {
display: block;
} .nav-dropdown-menu--mobiel {
position: static !important;
display: none;
width: 100%;
box-shadow: none !important;
border: none !important;
border-top: 2px solid var(--rood) !important;
flex-wrap: wrap;
padding: 0.3rem 0;
}
.nav-dropdown-menu--mobiel.open {
display: flex !important;
}
.nav-dropdown-menu--mobiel a {
display: inline-block !important;
padding: 0.5rem 1rem !important;
font-size: 0.78rem !important;
border-bottom: none !important;
white-space: nowrap;
border-right: 1px solid #2a2a2a;
}
.nav-dropdown-menu a {
display: block !important;
padding: 0.55rem 1rem !important;
font-size: 0.78rem !important;
border-bottom: 1px solid #2a2a2a;
white-space: nowrap;
}
.nav-dropdown-menu a:last-child {
border-bottom: none;
}
.nav-dropdown-menu a:hover {
background: var(--rood) !important;
color: #fff !important;
} .container {
max-width: var(--max);
margin: 0 auto;
padding: 0 1.5rem;
} .hero-artikel {
margin: 2rem 0;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 0;
border: 1px solid #e0e0e0;
overflow: hidden;
background: var(--wit);
}
.hero-artikel:hover { box-shadow: 0 4px 20px rgba(0,0,0,0.12); }
.hero-afbeelding {
position: relative;
min-height: 380px;
}  .hero-afbeelding > a { display: block; height: 100%; overflow: hidden; }
.hero-afbeelding img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
transition: transform 0.4s ease;
}
.hero-artikel:hover .hero-afbeelding img { transform: scale(1.03); }
.hero-tekst {
position: relative;
padding: 2.5rem;
display: flex;
flex-direction: column;
justify-content: center;
}
.badge-rij {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 0.35rem;
align-self: flex-start;
margin-bottom: 0.8rem;
} .badge-rij--overlay {
position: absolute;
bottom: 0.7rem;
left: 0.7rem;
z-index: 2;
margin-bottom: 0;
}
.badge-rij--overlay .categorie-badge,
.badge-rij--overlay .populair-badge {
margin-bottom: 0;
box-shadow: 0 1px 4px rgba(0,0,0,.35);
}
.categorie-badge,
a.categorie-badge,
a.categorie-badge:visited {
display: inline-block;
background: var(--rood);
color: var(--wit);
font-size: 0.68rem;
font-weight: 700;
line-height: 1;
letter-spacing: 0.1em;
text-transform: uppercase; padding: 0.278rem 0.6rem 0.222rem;
margin-bottom: 0.8rem;
}
.badge-rij .categorie-badge,
.badge-rij a.categorie-badge,
.badge-rij a.categorie-badge:visited {
margin-bottom: 0;
}
.populair-badge {
display: inline-block;
background: #e67c00;
color: #fff;
font-size: 0.68rem;
font-weight: 700;
line-height: 1;
letter-spacing: 0.1em;
text-transform: uppercase;
padding: 0.278rem 0.6rem 0.222rem;
margin-bottom: 0.8rem;
margin-left: 0.35rem;
}
.badge-rij .populair-badge {
margin-bottom: 0;
margin-left: 0;
}
html.nachtmodus .populair-badge { background: #c86a00; } .breaking-vlag {
position: absolute; top: 15px;
left: -15px;
right: 15px; z-index: 2;
display: flex;
font-family: var(--sans);
font-weight: 800;
font-style: italic;
font-size: 0.82rem;
line-height: 1;
letter-spacing: 0.01em;
text-transform: uppercase;
filter: drop-shadow(0 2px 6px rgba(0,0,0,.35));
}
.breaking-vlag-rood,
.breaking-vlag-zwart {
display: flex;
align-items: center;
color: var(--wit);
padding: 0.6rem 1.1rem 0.55rem 1rem;
position: relative;
overflow: hidden;
}
.breaking-vlag-rood { flex-shrink: 0; } .breaking-vlag-zwart { flex: 1; justify-content: flex-start; } .breaking-vlag-rood,
.breaking-vlag-zwart { --vlag-schuin: 16px; }
.breaking-vlag-rood {
background: linear-gradient(140deg, #ff3b3b 0%, var(--rood) 45%, #8a0000 100%);
clip-path: polygon(0 0, 100% 0, calc(100% - var(--vlag-schuin)) 100%, 0 100%);
}
.breaking-vlag-zwart { background: linear-gradient(140deg, #262626 0%, #000 55%, #000 100%);
clip-path: polygon(var(--vlag-schuin) 0, 100% 0, 100% 100%, 0 100%);
margin-left: calc(-1 * var(--vlag-schuin)); padding-left: calc(0.3rem + var(--vlag-schuin));
} .breaking-vlag-stip {
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--wit);
flex-shrink: 0;
margin-right: 0.4rem;
font-style: normal;
} .hero-artikel--breaking { border: 2px solid var(--rood); overflow: visible; }
html.nachtmodus .hero-artikel--breaking { border-color: var(--rood); } @media (prefers-reduced-motion: no-preference) {
.breaking-vlag-stip { animation: breaking-stip-knipper 1.2s ease-in-out infinite; }
}
@keyframes breaking-stip-knipper {
0%, 100% { opacity: 1; }
50%      { opacity: .25; }
} html.nachtmodus .bnsp-zw-wrap   { box-shadow: none !important; }
html.nachtmodus .bnsp-rij       { background: #1e1e1e !important; border-color: #2e2e2e !important; }
html.nachtmodus .bnsp-rij-label { color: #aaa !important; }
html.nachtmodus .bnsp-rij-temp  { color: #ccc !important; }
html.nachtmodus .bnsp-body      { background: #1a1310 !important; }
html.nachtmodus .bnsp-datum     { color: #aaa !important; }
html.nachtmodus .bnsp-temp      { color: #ccc !important; }
html.nachtmodus .bnsp-footer    { background: #161616 !important; border-color: #2a2a2a !important; color: #666 !important; }
html.nachtmodus .bnsp-ikga-teller { color: #888 !important; } .hero-tekst .artikel-intro {
font-family: 'Source Serif 4', Georgia, serif;
}
.hero-tekst .artikel-titel {
font-family: var(--serif);
font-size: clamp(1.6rem, 3vw, 2.4rem);
font-weight: 700;
line-height: 1.2;
margin-bottom: 1rem;
color: var(--zwart);
} .hero-tekst .artikel-titel a::after {
content: '';
position: absolute;
inset: 0;
}
.artikel-intro {
color: #444;
font-size: 1rem;
line-height: 1.7;
margin-bottom: 1.2rem; display: -webkit-box;
-webkit-line-clamp: 6;
-webkit-box-orient: vertical;
overflow: hidden;
}
.lees-meer {
display: inline-block;
background: var(--rood);
color: var(--wit);
font-size: 0.8rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
padding: 0.5rem 1.2rem;
transition: background 0.15s;
align-self: flex-start;
}
.lees-meer:hover { background: #990000; color: var(--wit); } .sectie-label {
display: flex;
align-items: center;
gap: 1rem;
margin: 2.5rem 0 1.2rem;
}
.sectie-label h2 {
font-family: var(--sans);
font-size: 0.75rem;
font-weight: 700;
letter-spacing: 0.15em;
text-transform: uppercase;
color: var(--midgrijs);
white-space: nowrap;
}
.sectie-label::after {
content: '';
flex: 1;
height: 1px;
background: #e0e0e0;
} .artikel-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1.5rem;
margin-bottom: 2rem;
}
.artikel-kaart {
background: var(--wit);
border: 1px solid #e8e8e8;
overflow: hidden;
transition: box-shadow 0.2s;
}
.artikel-kaart:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.1); }
.kaart-afbeelding {
position: relative;
overflow: hidden;
aspect-ratio: 16/9;
}
.kaart-afbeelding img {
width: 100%;
height: 100%;
object-fit: cover; object-position: center top;
transition: transform 0.35s ease;
}
.kaart-afbeelding iframe {
width: 100%;
height: 100%;
border: 0;
display: block;
}
.artikel-kaart:hover .kaart-afbeelding img { transform: scale(1.05); }
.video-grid { grid-template-columns: repeat(2, 1fr); }
.video-galerij-insturen-link { text-align: center; margin: 2rem 0; } .single-content .video-galerij-insturen-link a,
.single-content .video-galerij-insturen-link a:hover {
font-family: var(--sans);
color: var(--wit);
text-decoration: none;
} .single-content .video-badge-datum-rij .categorie-badge {
font-family: var(--sans);
}
.video-kaart .kaart-inhoud { padding: .4rem .6rem .3rem; position: relative; }
.video-kaart .artikel-titel a::after { content: ''; position: absolute; inset: 0; }
.video-kaart .artikel-titel { font-size: .88rem; margin-top: 0; margin-bottom: .15rem; line-height: 1.2; }
.video-badge-datum-rij { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .2rem; }
.video-badge-datum-rij .categorie-badge { margin-bottom: 0; }
.video-kaart .artikel-meta.video-datum { margin: 0; font-size: .68rem; flex-shrink: 0; margin-left: auto; }
.video-omschrijving {
font-size: .78rem;
color: var(--midgrijs);
line-height: 1.35;
margin: 0 0 .15rem;
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
}
.kaart-inhoud {
position: relative;
padding: 1rem 1.1rem 1.2rem;
}
.artikel-titel {
font-family: var(--serif);
font-size: 1.1rem;
font-weight: 700;
line-height: 1.3;
color: var(--zwart);
margin-bottom: 0.5rem; text-wrap: balance;
} .kaart-inhoud .artikel-titel a::after,
.lijst-tekst .artikel-titel a::after {
content: '';
position: absolute;
inset: 0;
}
.artikel-meta {
font-size: 0.72rem;
color: var(--midgrijs);
letter-spacing: 0.04em;
} .artikel-statsbalk-mini strong { color: var(--zwart); font-weight: 700; letter-spacing: 0; }
html.nachtmodus .artikel-statsbalk-mini strong { color: var(--wit); } .artikel-lijst {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1px;
background: #e0e0e0;
border: 1px solid #e0e0e0;
margin-bottom: 2rem;
}
.lijst-item {
background: var(--wit);
display: grid;
grid-template-columns: 120px 1fr;
gap: 0;
overflow: hidden;
transition: background 0.15s;
}
.lijst-item:hover { background: #fafafa; }
.lijst-afbeelding {
overflow: hidden;
min-height: 90px;
}
.lijst-afbeelding img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
}
.lijst-tekst {
position: relative;
padding: 0.8rem 1rem;
}
.lijst-tekst .artikel-titel {
font-size: 0.95rem;
} .hoofd-zijbalk {
display: grid;
grid-template-columns: 1fr 300px;
gap: 2rem;
margin-bottom: 3rem;
}
.zijbalk-widget {
margin-bottom: 2rem;
}
.widget-titel {
font-size: 0.72rem;
font-weight: 700;
letter-spacing: 0.15em;
text-transform: uppercase;
color: var(--midgrijs);
border-bottom: 2px solid var(--rood);
padding-bottom: 0.5rem;
margin-bottom: 1rem;
} .site-footer {
background: var(--zwart);
color: #aaa;
padding: 1.1rem 0 0;
margin-top: 3rem;
}
.footer-inner {
max-width: var(--max);
margin: 0 auto;
padding: 0 1.5rem;
}
.footer-logo-rij {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: 0.6rem;
margin-bottom: 0.5rem;
}
.footer-logo {
font-family: var(--serif);
font-size: 1.8rem;
color: var(--wit);
font-weight: 700;
text-transform: lowercase;
}
.footer-logo span { color: var(--rood); }
.footer-slogan {
font-size: 0.8rem;
color: #666;
}
.footer-sub-rij {
display: flex;
align-items: baseline;
justify-content: space-between;
flex-wrap: wrap;
gap: 0.5rem 1.5rem;
margin-bottom: 1rem;
}
.footer-sub {
font-size: 0.8rem;
margin-bottom: 0;
color: var(--wit);
}
.footer-sociaal-mobiel {
display: none; }
.footer-links {
font-size: 0.8rem;
color: #777;
margin-bottom: 0;
text-align: right;
}
.footer-links a {
color: #999;
text-decoration: none;
}
.footer-links a:hover { text-decoration: underline; } .single-header {
max-width: 780px;
margin: 2.5rem auto 0;
padding: 0 1.5rem;
}
.single-header .categorie-badge { margin-bottom: 1rem; }
.single-titel {
font-family: var(--serif);
font-size: clamp(1.8rem, 4vw, 3rem);
font-weight: 700;
line-height: 1.15;
margin-bottom: 1rem;
color: var(--zwart);
text-wrap: balance;
}
.single-meta {
font-size: 0.8rem;
color: var(--midgrijs);
margin-bottom: 1.5rem;
padding-bottom: 1.5rem;
border-bottom: 1px solid #e0e0e0;
display: flex;
align-items: center;
gap: 0.6rem;
}
.single-meta .categorie-badge { margin-bottom: 0; } .redactie-label {
display: inline-flex;
align-items: center;
line-height: 1;
font-size: .62rem;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
padding: 4px 7px;
border: 1px solid currentColor;
border-radius: 3px;
opacity: .7;
}
.artikel-meta .redactie-label { margin-right: .4rem; vertical-align: middle; } .single-meta .redactie-label { margin-left: auto; }
.vw-datum {
display: flex;
align-items: center;
justify-content: space-between;
gap: .6rem;
}
.single-uitgelicht-afb {
max-width: 900px;
margin: 0 auto 2rem;
padding: 0 1.5rem;
}
.single-uitgelicht-afb img {
width: 100%;
max-height: 500px;
object-fit: cover; object-position: center top;
}
.single-video-speler {
background: #000;
margin: 0 0 2rem;
}
.single-video-speler > div { width: min(100%, 1100px, calc(90vh * 16 / 9));
aspect-ratio: 16 / 9;
margin: 0 auto;
}
.single-video-speler iframe { width: 100%; height: 100%; border: 0; display: block; }
.video-single-terug { font-size: .85rem; color: var(--midgrijs); }
.single-body {
position: relative;
max-width: 780px;
margin: 0 auto;
padding: 0 1.5rem;
overflow: visible;
}
.single-auteur {
max-width: 780px;
margin: 1.5rem auto 0;
padding: 1.2rem 1.5rem 0;
border-top: 1px solid #e0e0e0;
font-size: 0.8rem;
color: var(--midgrijs);
}
.single-auteur strong { color: var(--zwart); }
html.nachtmodus .single-auteur { border-top-color: #333; }
html.nachtmodus .single-auteur strong { color: #eee; }
.single-aside {
display: none;
} .single-body--met-aside .single-aside {
display: block;
margin-top: 0;
padding: 0 0 1.5rem;
} @media (min-width: 1230px) {
.single-body--met-aside .single-aside {
position: absolute;
top: 0;
left: calc(100% + 1.5rem);
width: 200px;
padding: 0;
}
}
.single-aside .gerelateerd-wrap {
max-width: none;
margin: 0;
padding: 0;
}
.single-aside .gerelateerd-kaart { flex-direction: column; }
.single-aside .gerelateerd-afb img { width: 100%; height: 140px; }
.single-content {
max-width: 780px;
margin: 0 auto 3rem;
padding: 0 1.5rem;
font-size: 1.05rem;
line-height: 1.8;
color: #222;
} .single-body .single-content {
max-width: none;
margin-bottom: 3rem;
padding: 0;
min-width: 0;
}
.single-content p, .vw-tekst p { margin-bottom: 1.4rem; }
.single-content h2, .vw-tekst h2 { font-family: var(--serif); font-size: 1.5rem; line-height: 1.15; margin: 2rem 0 0.8rem; }
.single-content h3, .vw-tekst h3 { font-family: var(--serif); font-size: 1.2rem; line-height: 1.15; margin: 1.5rem 0 0.6rem; }
.single-content ul, .vw-tekst ul,
.single-content ol, .vw-tekst ol { padding-left: 1.6rem; margin-bottom: 1.4rem; }
.single-content ul, .vw-tekst ul { list-style: disc; }
.single-content ol, .vw-tekst ol { list-style: decimal; }
.single-content li, .vw-tekst li { margin-bottom: 0.4rem; }  .single-content blockquote.artikel-pullquote,
.vw-tekst blockquote.artikel-pullquote {
float: right;
width: 45%; clear: right;
border-left: none;
background: none;
color: inherit;
padding: 0;
margin: 0.2rem 0 1rem 2.75rem;
border: none;
text-align: left;
}
.artikel-pullquote-tekst {
display: block;
font-family: var(--serif);
font-style: italic;
font-weight: 700;
font-size: 1.25rem;
line-height: 1.35;
color: var(--zwart);
text-wrap: balance;
}
html.nachtmodus .artikel-pullquote-tekst { color: #e8e8e8; }
@media (max-width: 600px) {
.single-content blockquote.artikel-pullquote,
.vw-tekst blockquote.artikel-pullquote {
float: none;
width: auto;
margin: 0.5rem 0 1.2rem;
}
.artikel-pullquote-tekst { font-size: 1.15rem; }
.single-content h2, .vw-tekst h2 { font-size: 1.25rem; }
.single-content h3, .vw-tekst h3 { font-size: 1.05rem; }
}
em.aanhaling { font-style: italic; } .geen-afb {
width: 100%;
height: 100%;
min-height: 160px;
background: linear-gradient(135deg, #1a1a1a 0%, #333 100%);
display: flex;
align-items: center;
justify-content: center;
color: #555;
font-size: 2rem;
} .hero-onder {
display: grid;
grid-template-columns: 2fr 1fr;
gap: 1.5rem;
margin: 1.2rem 0 2rem;
align-items: stretch;
}
.hero-onder-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1rem;
align-content: start;
} .hero-onder-grid > .artikel-kaart:first-child {
grid-column: 1 / -1;
display: flex;
align-items: stretch;
}
.hero-onder-grid > .artikel-kaart:first-child .kaart-afbeelding {
width: 42%;
aspect-ratio: auto;
flex-shrink: 0;
}
.hero-onder-grid > .artikel-kaart:first-child .kaart-inhoud {
display: flex;
flex-direction: column;
justify-content: center;
flex: 1;
min-width: 0;
}
.hero-onder-grid > .artikel-kaart:first-child .artikel-titel {
font-size: clamp(1.25rem, 1.8vw, 1.5rem);
line-height: 1.25;
}
@media (max-width: 700px) {
.hero-onder-grid > .artikel-kaart:first-child {
grid-column: auto;
display: block;
}
.hero-onder-grid > .artikel-kaart:first-child .kaart-afbeelding {
width: auto;
aspect-ratio: 16/9;
}
.hero-onder-grid > .artikel-kaart:first-child .artikel-titel {
font-size: 1.1rem;
}
}
.hero-onder-eiphone {
display: flex;
flex-direction: column;
gap: 1.2rem;
min-width: 0;
min-height: 0;
overflow: hidden;
} .hero-onder-eiphone .eiphone {
flex: 1;
margin: 0;
min-width: 0;
display: flex;
flex-direction: column;
}
.hero-onder-eiphone .eiphone-lijst-wrap {
flex: 1;
max-height: none;
min-height: 0;
} @media (max-width: 900px) {
.hero-artikel { grid-template-columns: 1fr; }
.hero-afbeelding { min-height: 240px; } .hero-onder { grid-template-columns: 1fr 1fr; }
.hero-onder-grid { grid-column: 1 / -1; }
.hero-onder-eiphone {
grid-column: 1 / -1;
}
.hero-onder-eiphone .eiphone-lijst-wrap { max-height: 190px; }
.artikel-grid { grid-template-columns: 1fr 1fr; }
.hoofd-zijbalk { grid-template-columns: 1fr; }
.artikel-lijst { grid-template-columns: 1fr; }
} .hamburger {
display: none;
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
background: none;
border: none;
cursor: pointer;
color: #fff;
padding: 2px;
position: absolute;
right: 1rem;
top: 50%;
transform: translateY(-50%);
}
.hamburger svg { transition: opacity 0.15s; }
.ei-stroke { transition: stroke 0.15s; }
html.nachtmodus .hamburger:hover .ei-stroke { stroke: #fff !important; }
@media (max-width: 600px) { .breaking-vlag { left: 0; }
.hero-onder { grid-template-columns: 1fr; }
.hero-onder-grid { grid-template-columns: 1fr; }
.hero-onder-eiphone { grid-column: auto; }
.artikel-grid { grid-template-columns: 1fr; } .header-inner { flex-direction: row; flex-wrap: nowrap; position: relative; padding: 0 0.75rem; gap: 0.5rem; }
.lijst-item { grid-template-columns: 90px 1fr; }
.site-tagline { font-size: 0.54rem; letter-spacing: 0.03em; } .hamburger { display: flex; position: static; transform: none; order: 3; flex: 0 0 36px; }
.site-nav { display: none; }
.site-nav.nav-open { display: block; }
.nav-inner { flex-direction: column; overflow: visible; white-space: normal; padding: 0; }
.nav-inner .nav-dropdown { width: 100%; }
.nav-inner > a,
.nav-inner .nav-dropdown-trigger {
padding: 0.8rem 1.2rem;
border-bottom: 1px solid #2a2a2a;
} .topbalk { display: none; }
.header-sociaal { display: none !important; }
.nav-magazine { display: block; } .footer-sociaal-mobiel {
display: flex;
gap: 1.2rem;
margin-bottom: 1.2rem;
} .hero-artikel {
margin: 0 -1.5rem 2rem;
border-left: none;
border-right: none;
border-top: none;
border-radius: 0;
}
.hero-tekst { padding: 1.2rem 1rem; } .single-uitgelicht-afb {
max-width: none;
padding: 0;
margin: 0 0 1.5rem;
}
.single-uitgelicht-afb img {
max-height: 60vh;
} .single-header { margin-top: 1.5rem; }
.single-titel { margin-bottom: 0.6rem; font-size: 1.6rem; }
} .naproat-wrap { margin-bottom: 1.5rem; }
.naproat-label {
font-size: .7rem;
font-weight: 700;
letter-spacing: .1em;
text-transform: uppercase;
color: #aaa;
margin: 0 0 .6rem;
}
.naproat-notitie {
border-left: 3px solid var(--rood);
padding: .6rem 0 .6rem .9rem;
margin-bottom: .75rem;
}
.naproat-notitie:last-child { margin-bottom: 0; }
.naproat-tekst {
font-size: .85rem;
line-height: 1.6;
color: #333;
margin: 0 0 .3rem;
font-style: italic;
}
.naproat-datum {
font-size: .68rem;
color: #bbb;
margin: 0;
}
html.nachtmodus .naproat-tekst { color: #bbb; }
html.nachtmodus .naproat-notitie { border-color: var(--rood); } .gerelateerd-wrap {
max-width: var(--single-max, 780px);
margin: 2.5rem auto 0;
padding: 0 1.5rem;
}
.gerelateerd-label {
font-size: .7rem;
font-weight: 700;
letter-spacing: .1em;
text-transform: uppercase;
color: #aaa;
margin: 0 0 .75rem;
}
.gerelateerd-kaart {
display: flex;
gap: 1.1rem;
align-items: flex-start;
text-decoration: none;
background: #faf9f7;
border: 1px solid #e8e4df;
border-left: 4px solid var(--rood);
border-radius: 4px;
padding: 1rem;
transition: box-shadow .18s, border-color .18s;
}
.gerelateerd-kaart + .gerelateerd-kaart {
margin-top: 5px;
}
.gerelateerd-kaart:hover {
box-shadow: 0 3px 14px rgba(0,0,0,.09);
border-left-color: #aa0000;
}
.gerelateerd-afb { flex-shrink: 0; }
.gerelateerd-afb img {
width: 130px;
height: 82px;
object-fit: cover;
object-position: center top;
border-radius: 3px;
display: block;
}
.gerelateerd-kaart--compact .gerelateerd-afb img {
width: 80px;
height: 52px;
}
.gerelateerd-tekst { min-width: 0; }
.gerelateerd-datum { font-size: .72rem; color: #aaa; margin: 0 0 .3rem; }
.gerelateerd-titel {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1rem;
font-weight: 700;
color: #111;
margin: 0 0 .35rem;
line-height: 1.35;
}
.gerelateerd-kaart--compact .gerelateerd-titel {
font-size: .88rem;
margin-bottom: 0;
}
.gerelateerd-intro {
font-size: .83rem;
color: #666;
line-height: 1.55;
margin: 0;
}
@media (max-width: 480px) {
.gerelateerd-kaart { flex-direction: column; }
.gerelateerd-afb img { width: 100%; height: 160px; }
.gerelateerd-kaart--compact { flex-direction: row; }
.gerelateerd-kaart--compact .gerelateerd-afb img { width: 80px; height: 52px; }
}
html.nachtmodus .gerelateerd-kaart  { background: #1a1a1a; border-color: #2a2a2a; border-left-color: var(--rood); }
html.nachtmodus .gerelateerd-titel  { color: #eee; }
html.nachtmodus .gerelateerd-intro  { color: #999; } .deel-sectie {
border-top: 1px solid #e0e0e0;
border-bottom: 1px solid #e0e0e0;
padding: 1.5rem 0;
margin: 0 0 2rem;
}
.deel-inner {
max-width: 780px;
margin: 0 auto;
padding: 0 1.5rem;
display: flex;
align-items: center;
gap: 1rem;
flex-wrap: wrap;
}
.deel-label {
font-size: 0.75rem;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--midgrijs);
white-space: nowrap;
}
.deel-knoppen {
display: flex;
gap: 0.5rem;
flex-wrap: wrap;
}
.deel-knop {
display: inline-flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border-radius: 4px;
color: var(--wit);
transition: opacity 0.15s;
text-decoration: none;
flex-shrink: 0;
}
.deel-knop:hover { opacity: 0.8; color: var(--wit); }
.deel-knop svg { width: 18px; height: 18px; flex-shrink: 0; }
.deel-facebook  { background: #1877f2; }
.deel-x         { background: #000; }
.deel-whatsapp  { background: #25d366; }
.deel-linkedin   { background: #0a66c2; }
.deel-email      { background: #555; }
.deel-instapaper { background: #1a1a1a; } .reacties-sectie {
background: var(--grijs);
padding: 2.5rem 0;
}
.reacties-inner {
max-width: 780px;
margin: 0 auto;
padding: 0 1.5rem;
}
.reactie-uitleg {
background: var(--wit);
border-left: 4px solid var(--rood);
padding: 1rem 1.2rem;
margin-bottom: 2rem;
font-size: 0.9rem;
}
.reactie-uitleg strong { display: block; margin-bottom: 0.3rem; font-size: 1rem; }
.reactie-uitleg p { color: #555; margin: 0; } .comment-list { list-style: none; padding: 0; margin: 0 0 2rem; }
.comment-list .comment {
background: var(--wit);
padding: 1.2rem;
margin-bottom: 1rem;
border: 1px solid #e8e8e8;
}
.comment-author { font-weight: 700; font-size: 0.9rem; }
.comment-metadata { font-size: 0.75rem; color: var(--midgrijs); margin-bottom: 0.6rem; }
.comment-content p { font-size: 0.95rem; margin: 0; color: var(--zwart); }
#respond { margin-top: 1rem; }
#respond h3 {
font-family: var(--serif);
font-size: 1.3rem;
font-weight: 700;
margin-bottom: 1rem;
color: var(--zwart);
}
.comment-form label {
display: block;
font-size: 0.8rem;
font-weight: 600;
margin-bottom: 0.3rem;
color: #444;
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0,0,0,0);
white-space: nowrap;
border: 0;
}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form textarea {
width: 100%;
padding: 0.6rem 0.8rem;
border: 1px solid #ddd;
font-size: 0.95rem;
font-family: var(--sans);
margin-bottom: 0.5rem;
}
.comment-form p {
margin-bottom: 0.5rem;
}
.comment-form textarea { min-height: 120px; resize: vertical; }
.comment-form input[type="submit"],
#submit {
background: var(--rood);
color: var(--wit);
border: none;
padding: 0.6rem 1.5rem;
font-size: 0.85rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
cursor: pointer;
transition: background 0.15s;
}
.comment-form input[type="submit"]:hover { background: #990000; } .reacties-titel {
font-family: var(--serif);
font-size: 1.3rem;
font-weight: 700;
color: var(--zwart);
margin-bottom: 1.2rem;
padding-bottom: 0.6rem;
border-bottom: 2px solid var(--rood);
}
.comment-list { list-style: none; padding: 0; margin: 0 0 2rem; }
.reactie-item {
background: var(--wit);
border: 1px solid #e8e8e8;
padding: 1.2rem;
margin-bottom: 0.8rem;
}
.reactie-header {
display: flex;
gap: 1rem;
align-items: baseline;
margin-bottom: 0.5rem;
}
.reactie-auteur { font-weight: 700; font-size: 0.9rem; }
.reactie-datum { font-size: 0.75rem; color: var(--midgrijs); }
.reactie-tekst p { font-size: 0.95rem; margin: 0; color: var(--zwart); }
.reactie-wacht { color: var(--midgrijs); font-size: 0.8rem; margin-top: 0.4rem; }
.reactie-uitleg-klein {
font-size: 0.85rem;
color: #555;
background: #fff8e1;
border-left: 3px solid #f0c040;
padding: 0.6rem 0.8rem;
margin-bottom: 1rem;
}
.comment-reply-title { font-family: var(--serif); font-size: 1.3rem; font-weight: 700; margin-bottom: 1rem; color: var(--zwart); }
.reacties-gesloten { color: var(--midgrijs); font-style: italic; font-size: 0.9rem; } .social-reacties {
margin: 0 0 2.5rem;
}
.social-reacties-kop {
font-family: var(--serif);
font-size: 1.05rem;
font-weight: 700;
color: var(--zwart);
margin: 0 0 0.9rem;
}
.social-reactie {
background: #f7f9fc;
border-left: 3px solid #4267b2;
padding: 0.85rem 1rem;
margin-bottom: 0.6rem;
}
.social-reactie-auteur { font-weight: 700; font-size: 0.85rem; color: var(--zwart); }
.social-reactie-likes {
font-size: 0.78rem;
color: var(--midgrijs);
margin-left: 0.5rem;
}
.social-reactie-tekst {
font-size: 0.92rem;
color: var(--zwart);
margin: 0.3rem 0 0; overflow-wrap: break-word;
word-break: break-word;
}
html.nachtmodus .social-reactie { background: #1c2430; }
html.nachtmodus .social-reactie-auteur,
html.nachtmodus .social-reactie-tekst { color: #e8e8e8; }
.comment-form-captcha {
display: flex;
align-items: center;
gap: 0.8rem;
flex-wrap: wrap;
margin-bottom: 1rem;
}
.comment-form-captcha label { margin-bottom: 0; white-space: nowrap; }
.comment-form-captcha input[type="text"] {
width: 80px;
margin-bottom: 0;
}
.reactie-submit {
background: var(--rood);
color: var(--wit);
border: none;
padding: 0.65rem 1.6rem;
font-size: 0.85rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
cursor: pointer;
transition: background 0.15s;
}
.reactie-submit:hover { background: #990000; } #commentform p { margin-bottom: 0.8rem; }
#commentform label {
display: block;
font-size: 0.8rem;
font-weight: 600;
margin-bottom: 0.3rem;
color: #444;
}
#commentform input[type="text"],
#commentform input[type="email"],
#commentform input[type="url"],
#commentform textarea {
width: 100%;
padding: 0.6rem 0.8rem;
border: 1px solid #ddd;
border-radius: 2px;
font-size: 0.95rem;
font-family: var(--sans);
background: var(--wit);
}
#commentform textarea { min-height: 130px; resize: vertical; } .comment-form-url { display: none; } .comment-form-cookies-consent {
display: flex;
align-items: flex-start;
gap: 0.4rem;
margin-bottom: 0.8rem;
}
.comment-form-cookies-consent label { font-weight: 400; font-size: 0.8rem; line-height: 1.4; margin: 0; }
.comment-form-cookies-consent input[type="checkbox"] { width: auto; flex-shrink: 0; margin-top: 0.15rem; }
#commentform input[type="submit"] {
background: var(--rood);
color: var(--wit);
border: none;
padding: 0.65rem 1.6rem;
font-size: 0.85rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
cursor: pointer;
transition: background 0.15s;
border-radius: 2px;
}
#commentform input[type="submit"]:hover { background: #990000; } .tip-sectie {
background: var(--zwart);
color: var(--wit);
padding: 2rem 2rem 1.8rem;
margin: 2.5rem 0;
border-left: 4px solid var(--rood);
border-radius: 0 8px 8px 0;
} .tip-header {
margin-bottom: 1.4rem;
padding-bottom: 1.2rem;
border-bottom: 1px solid #242424;
}
.tip-titel {
font-family: var(--serif);
font-size: clamp(1.2rem, 3vw, 1.5rem);
font-weight: 700;
color: #fff;
margin: 0 0 .4rem;
line-height: 1.25;
}
.tip-subtitel {
font-size: .85rem;
color: #777;
margin: 0;
line-height: 1.6;
} .tip-sectie-vak {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
height: 100%;
margin: 0;
cursor: pointer;
transition: transform .15s, box-shadow .15s;
}
.tip-sectie-vak:hover {
transform: translateY(-3px);
box-shadow: 0 16px 36px rgba(0,0,0,.4);
} .tip-sectie-vak .tip-open-knop { pointer-events: none; }
.tip-sectie-vak .tip-header {
display: flex;
flex-direction: column;
align-items: center;
gap: .6rem;
margin: 0;
padding: 0;
border-bottom: 0;
}
.tip-vak-icoon { font-size: 2.4rem; line-height: 1; }
.tip-sectie-vak .tip-titel { margin: 0; }
.tip-sectie-vak .tip-subtitel { margin: 0 0 .3rem; }
.tip-open-knop { padding: .6rem 1.4rem; font-size: .85rem; } .tip-overlay {
position: fixed;
inset: 0;
background: rgba(0,0,0,.75);
z-index: 99999;
display: flex;
align-items: center;
justify-content: center;
padding: 2rem 1rem;
}
.tip-overlay-kaart {
position: relative;
width: 100%;
max-width: 640px;
max-height: 92vh;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 24px 64px rgba(0,0,0,.5);
}
.tip-overlay-scroll {
max-height: 92vh;
overflow-y: auto;
}
.tip-overlay-scroll .tip-sectie { margin: 0; border-radius: 10px; }
.tip-overlay-sluiten {
position: absolute;
top: .7rem;
right: .7rem;
z-index: 2;
width: 32px;
height: 32px;
border-radius: 50%;
background: rgba(0,0,0,.45);
color: #fff;
border: 0;
font-size: 1.1rem;
line-height: 1;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
.tip-overlay-sluiten:hover { background: rgba(0,0,0,.65); } .tip-formulier { display: flex; flex-direction: column; gap: 1rem; }
.tip-rijen {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1rem;
}
.tip-veld { display: flex; flex-direction: column; gap: .4rem; }
.tip-veld label {
font-size: .75rem;
font-weight: 600;
color: #bbb;
letter-spacing: .04em;
text-transform: uppercase;
}
.tip-veld-hint { font-size: .72rem; color: #555; font-weight: 400; text-transform: none; letter-spacing: 0; margin-left: 4px; }
.tip-veld-vereist { color: var(--rood); }
.tip-veld input[type="text"],
.tip-veld input[type="email"],
.tip-veld textarea {
background: #181818;
border: 1px solid #2e2e2e;
border-radius: 4px;
color: var(--wit);
padding: .7rem .9rem;
font-size: .9rem;
font-family: var(--sans);
width: 100%;
transition: border-color .15s, box-shadow .15s;
}
.tip-veld input:focus,
.tip-veld textarea:focus {
outline: none;
border-color: var(--rood);
box-shadow: 0 0 0 3px rgba(204,0,0,.18);
}
.tip-veld input::placeholder,
.tip-veld textarea::placeholder { color: #444; }
.tip-veld textarea { min-height: 120px; resize: vertical; } .tip-foto-rij {
display: flex;
align-items: center;
gap: .8rem;
flex-wrap: wrap;
}
.tip-foto-knop {
display: inline-flex;
align-items: center;
gap: .4rem;
background: transparent;
border: 1px solid #383838;
color: #aaa;
font-size: .82rem;
padding: .5rem 1rem;
border-radius: 4px;
cursor: pointer;
transition: border-color .15s, color .15s;
white-space: nowrap;
}
.tip-foto-knop:hover { border-color: #666; color: #ddd; }
.tip-foto-hint { font-size: .72rem; color: #444; }
.tip-foto-input { position: absolute; opacity: 0; width: 0; height: 0; } .tip-captcha-rij {
display: flex !important;
flex-direction: row !important;
align-items: center;
gap: 0.6rem;
flex-wrap: nowrap;
justify-content: flex-start;
}
.tip-captcha-rij label { display: none; }
.tip-captcha-rij img { flex-shrink: 0; }
.tip-captcha-rij input[type="text"] { width: 150px; flex-shrink: 0; } .tip-footer {
display: flex;
align-items: center;
gap: 1.2rem;
flex-wrap: wrap;
padding-top: .5rem;
}
.tip-knop {
background: var(--rood);
color: var(--wit);
border: none;
padding: .85rem 2rem;
font-size: .92rem;
font-weight: 700;
cursor: pointer;
border-radius: 4px;
transition: background .15s, transform .1s;
white-space: nowrap;
flex-shrink: 0;
}
.tip-knop:hover { background: #aa0000; transform: translateY(-1px); }
.tip-privacy {
font-size: .75rem;
color: #444;
margin: 0;
line-height: 1.55;
flex: 1;
min-width: 160px;
}
.tip-succes {
background: #1a3a1a;
color: #6fcf6f;
border-left: 3px solid #4caf50;
padding: 0.6rem 0.8rem;
font-size: 0.9rem;
margin-bottom: 0.5rem;
}
.tip-fout {
background: #3a1a1a;
color: #ff8080;
border-left: 3px solid var(--rood);
padding: 0.6rem 0.8rem;
font-size: 0.9rem;
margin-bottom: 0.5rem;
}
.tip-veld-hint { font-size: .75rem; color: #aaa; font-weight: 400; margin-left: 4px; }
.tip-foto-input { width: 100%; margin-top: 4px; cursor: pointer; } .video-insturen {
background: var(--zwart);
color: var(--wit);
padding: 2rem 2rem 1.8rem;
margin: 2.5rem 0;
border-left: 4px solid var(--rood);
border-radius: 0 8px 8px 0;
}
.video-header {
margin-bottom: 1.4rem;
padding-bottom: 1.2rem;
border-bottom: 1px solid #242424;
}
.video-titel {
font-family: var(--serif);
font-size: clamp(1.2rem, 3vw, 1.5rem);
font-weight: 700;
color: #fff;
margin: 0 0 .4rem;
line-height: 1.25;
}
.video-subtitel { font-size: .85rem; color: #777; margin: 0; line-height: 1.6; }
.video-upload-stap { display: flex; flex-direction: column; gap: .8rem; }
.video-bestand-rij { display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; }
.video-bestand-knop {
display: inline-flex;
align-items: center;
gap: .4rem;
background: transparent;
border: 1px solid #383838;
color: #aaa;
font-size: .85rem;
padding: .6rem 1.1rem;
border-radius: 4px;
cursor: pointer;
transition: border-color .15s, color .15s;
white-space: nowrap;
}
.video-bestand-knop:hover { border-color: #666; color: #ddd; }
.video-bestand-input { position: absolute; opacity: 0; width: 0; height: 0; }
.video-hint { font-size: .78rem; color: #666; }
.video-voortgang { display: flex; align-items: center; gap: .8rem; }
.video-voortgang-balk {
flex: 1;
height: 8px;
background: #222;
border-radius: 4px;
overflow: hidden;
}
.video-voortgang-vulling {
height: 100%;
width: 0;
background: var(--rood);
transition: width .2s ease;
}
.video-voortgang-tekst { font-size: .8rem; color: #999; flex-shrink: 0; width: 3.2em; text-align: right; }
.video-metadata-formulier { display: flex; flex-direction: column; gap: 1rem; margin-top: 1rem; }
.video-rijen { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.video-veld { display: flex; flex-direction: column; gap: .4rem; }
.video-veld label {
font-size: .75rem;
font-weight: 600;
color: #bbb;
letter-spacing: .04em;
text-transform: uppercase;
}
.video-veld-hint { font-size: .72rem; color: #555; font-weight: 400; text-transform: none; letter-spacing: 0; margin-left: 4px; }
.video-veld input[type="text"],
.video-veld input[type="email"],
.video-veld select,
.video-veld textarea {
background: #181818;
border: 1px solid #2e2e2e;
border-radius: 4px;
color: var(--wit);
padding: .7rem .9rem;
font-size: .9rem;
font-family: var(--sans);
width: 100%;
transition: border-color .15s, box-shadow .15s;
}
.video-veld input:focus,
.video-veld select:focus,
.video-veld textarea:focus {
outline: none;
border-color: var(--rood);
box-shadow: 0 0 0 3px rgba(204,0,0,.18);
}
.video-veld input::placeholder,
.video-veld textarea::placeholder { color: #444; }
.video-veld textarea { min-height: 90px; resize: vertical; }
.video-captcha-rij {
display: flex !important;
flex-direction: row !important;
align-items: center;
gap: 0.6rem;
flex-wrap: nowrap;
justify-content: flex-start;
}
.video-captcha-rij label { display: none; }
.video-captcha-rij img { flex-shrink: 0; min-height: 40px; display: block; border-radius: 3px; }
.video-captcha-rij input[type="text"] { width: 150px; flex-shrink: 0; }
.video-rechten-label {
display: flex !important;
flex-direction: row !important;
align-items: flex-start;
gap: .6rem;
font-size: .8rem !important;
font-weight: 400 !important;
text-transform: none !important;
letter-spacing: 0 !important;
color: #bbb !important;
line-height: 1.5;
cursor: pointer;
}
.video-rechten-label input[type="checkbox"] { flex-shrink: 0; margin-top: .2rem; width: 16px; height: 16px; accent-color: var(--rood); }
.video-footer { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; padding-top: .5rem; }
.video-verzenden {
background: var(--rood);
color: var(--wit);
border: none;
padding: .85rem 2rem;
font-size: .92rem;
font-weight: 700;
cursor: pointer;
border-radius: 4px;
transition: background .15s, transform .1s;
white-space: nowrap;
flex-shrink: 0;
}
.video-verzenden:hover { background: #aa0000; transform: translateY(-1px); }
.video-privacy { font-size: .75rem; color: #444; margin: 0; line-height: 1.55; flex: 1; min-width: 160px; }
.video-succes {
background: #1a3a1a;
color: #6fcf6f;
border-left: 3px solid #4caf50;
padding: 0.6rem 0.8rem;
font-size: 0.9rem;
margin-bottom: 0.5rem;
}
.video-fout {
background: #3a1a1a;
color: #ff8080;
border-left: 3px solid var(--rood);
padding: 0.6rem 0.8rem;
font-size: 0.9rem;
margin-bottom: 0.5rem;
}  .vijfde-wiel-widget {
margin: 2rem 0;
background: #fff;
border-left: 4px solid var(--rood);
border-radius: 0 6px 6px 0;
overflow: hidden;
box-shadow: 0 2px 10px rgba(0,0,0,.07);
}
.vijfde-wiel-kop {
background: #1a1a1a;
padding: 10px 20px;
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}
.vijfde-wiel-label {
color: #fff;
font-size: .75rem;
font-weight: 700;
letter-spacing: .07em;
text-transform: uppercase;
}
.vijfde-wiel-sub { color: #777; font-size: .72rem; } .vijfde-wiel-afb-link { display: block; line-height: 0; }
.vijfde-wiel-afb-link img {
width: 100%; height: 280px;
object-fit: cover; display: block;
object-position: center top;
}
.vijfde-wiel-tekst { padding: 18px 20px 20px; }
.vijfde-wiel-datum { font-size: .72rem; color: #aaa; margin: 0 0 6px; }
.vijfde-wiel-titel {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1.2rem; font-weight: 700;
line-height: 1.3; margin: 0 0 8px;
}
.vijfde-wiel-titel a { color: #111; text-decoration: none; }
.vijfde-wiel-titel a:hover { color: var(--rood); }
.vijfde-wiel-intro { font-size: .88rem; color: #555; line-height: 1.6; margin: 0 0 14px; }
.vijfde-wiel-meer {
display: inline-block; background: var(--rood); color: #fff;
font-size: .8rem; font-weight: 700; padding: 7px 16px;
border-radius: 3px; text-decoration: none;
}
.vijfde-wiel-meer:hover { background: #aa0000; color: #fff; }   .vw-archief-onder {
display: grid;
grid-template-columns: 260px 1fr;
gap: 2.5rem;
align-items: start;
margin-bottom: 2.5rem;
}
@media (max-width: 780px) {
.vw-archief-onder { grid-template-columns: 1fr; }
}
.vw-archief-onder .vw-archief-grid { grid-template-columns: repeat(2, 1fr); margin-bottom: 0; }
@media (max-width: 480px) {
.vw-archief-onder .vw-archief-grid { grid-template-columns: 1fr; }
}
.vw-archief-header {
border-left: 3px solid var(--rood);
padding: .1rem 0 .1rem 1.2rem;
}
.vw-archief-rubriek {
font-family: 'Playfair Display', Georgia, serif;
font-size: clamp(1.3rem, 3vw, 1.7rem);
font-weight: 700;
letter-spacing: 0;
text-transform: none;
color: var(--rood);
margin: 0 0 .6rem;
}
.vw-archief-titel {
font-family: 'Playfair Display', Georgia, serif;
font-size: clamp(1.2rem, 2.6vw, 1.5rem);
font-weight: 700;
line-height: 1.3;
margin: 0 0 .8rem;
color: var(--zwart);
}
.vw-archief-filosofie {
font-size: 1rem;
color: #888;
font-style: italic;
margin: 0;
}
.vw-archief-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1.5rem;
margin-bottom: 2.5rem;
}
@media (max-width: 780px) { .vw-archief-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .vw-archief-grid { grid-template-columns: 1fr; } }
.vw-archief-kaart { display: flex; flex-direction: column; }
.vw-archief-afb { display: block; line-height: 0; }
.vw-archief-afb img {
width: 100%; height: 180px;
object-fit: cover; object-position: center top; display: block;
border-radius: 4px 4px 0 0;
}
.vw-archief-tekst { padding: 12px 0 0; flex: 1; }
.vw-archief-datum { font-size: .7rem; color: #aaa; margin: 0 0 4px; }
.vw-archief-naam {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1rem; font-weight: 700;
line-height: 1.3; margin: 0 0 6px;
}
.vw-archief-naam a { color: var(--zwart); text-decoration: none; }
.vw-archief-naam a:hover { color: var(--rood); }
.vw-archief-intro { font-size: .82rem; color: #666; line-height: 1.55; margin: 0; }
.vw-archief-leeg { color: #aaa; font-style: italic; padding: 2rem 0; }
html.nachtmodus .vw-archief-titel    { color: #eee; }
html.nachtmodus .vw-archief-filosofie { color: #666; }
html.nachtmodus .vw-archief-naam a   { color: #ddd; }
html.nachtmodus .vw-archief-intro    { color: #999; } .vw-single { max-width: var(--max); margin: 0 auto; }
.vw-hero {
position: relative;
overflow: hidden;
max-height: 560px;
}
.vw-hero img {
width: 100%; height: auto;
max-height: 560px; object-fit: cover;
object-position: center top;
display: block;
}
.vw-hero-overlay {
position: absolute;
bottom: 0; left: 0; right: 0;
padding: 4rem 2rem 2rem;
background: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.72) 100%);
}
.vw-hero-overlay .vw-rubriek a { color: rgba(255,255,255,.75); }
.vw-hero-overlay .vw-rubriek a:hover { color: #fff; text-decoration: none; }
.vw-hero-overlay .vw-titel {
color: #fff;
font-size: clamp(1.6rem, 4.5vw, 2.8rem);
margin: .4rem 0 .5rem;
text-shadow: 0 2px 8px rgba(0,0,0,.4);
}
.vw-hero-overlay .vw-datum { color: rgba(255,255,255,.65); margin: 0; }
.vw-hero-tekst-only {
max-width: 780px;
margin: 0 auto;
padding: 2rem 1.5rem 0;
}
.vw-hero-tekst-only .vw-titel { color: var(--zwart); }
.vw-body {
display: grid;
grid-template-columns: minmax(0, 780px) 200px;
gap: 0 2.5rem;
max-width: var(--max);
margin: 0 auto;
padding: 2rem 1.5rem 3rem;
justify-content: center;
align-items: start;
}
.vw-content {
min-width: 0;
padding: 0;
}
.vw-aside {
position: sticky;
top: 2rem;
}
.vw-aside-inner {
border-left: 3px solid var(--rood);
padding: .1rem 0 .1rem 1rem;
margin-top: 3.8rem;
}
.vw-aside-label {
font-size: .7rem;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
color: var(--rood);
margin: 0 0 .6rem;
}
.vw-aside-tekst {
font-size: .82rem;
line-height: 1.65;
color: #666;
margin: 0 0 1rem;
font-style: italic;
}
.vw-aside-archief {
font-size: .75rem;
font-weight: 700;
color: var(--rood);
text-decoration: none;
}
.vw-aside-archief:hover { text-decoration: underline; }
@media (max-width: 900px) {
.vw-body {
grid-template-columns: 1fr;
max-width: 780px;
}
.vw-aside { position: static; order: -1; }
.vw-aside-inner {
border-left: none;
border-top: 3px solid var(--rood);
padding: .75rem 0 0;
margin-top: 0;
margin-bottom: 1.5rem;
}
}
html.nachtmodus .vw-aside-tekst { color: #999; }
html.nachtmodus .vw-aside-inner { border-color: var(--rood); }
.vw-rubriek {
font-size: .72rem; font-weight: 700;
letter-spacing: .08em; text-transform: uppercase;
margin-bottom: .6rem;
}
.vw-rubriek a { color: var(--rood); text-decoration: none; }
.vw-rubriek a:hover { text-decoration: underline; }
.vw-titel {
font-family: 'Playfair Display', Georgia, serif;
font-size: clamp(1.5rem, 4vw, 2.2rem);
font-weight: 700; line-height: 1.2;
margin: 0 0 .5rem;
}
.vw-datum { font-size: .78rem; color: #aaa; margin: 0 0 1.8rem; }  .vw-gallery {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 6px;
margin-top: 2rem;
}
.vw-gallery-item { display: block; line-height: 0; overflow: hidden; border-radius: 3px; }
.vw-gallery-item img {
width: 100%; height: 200px;
object-fit: cover; object-position: center top; display: block;
transition: transform .2s;
}
.vw-gallery-item:hover img { transform: scale(1.03); } .vw-bronnen {
margin-top: 2.2rem;
padding-top: 1.2rem;
border-top: 1px solid #e0e0e0;
}
html.nachtmodus .vw-bronnen { border-top-color: #2a2a2a; }
.vw-bronnen-label {
font-size: .7rem;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
color: #999;
margin: 0 0 .5rem;
}
.vw-bronnen-lijst {
margin: 0;
padding-left: 1.1rem;
font-size: .85rem;
color: #666;
line-height: 1.6;
}
html.nachtmodus .vw-bronnen-lijst { color: #999; } html.nachtmodus .vijfde-wiel-widget { background: #1a1a1a; box-shadow: none; }
html.nachtmodus .vijfde-wiel-kop    { background: #111; }
html.nachtmodus .vijfde-wiel-titel a { color: #eee; }
html.nachtmodus .vijfde-wiel-intro  { color: #aaa; } html.nachtmodus .vw-titel           { color: #eee; }
html.nachtmodus .vw-datum           { color: #666; } @media (min-width: 601px) {
.header-weer-wrap {
display: inline-flex;
align-items: center;
justify-content: center;
width: 34px;
min-height: 2.2rem;
flex-shrink: 0;
}
} .header-magazine-link {
display: none;
position: relative;
width: 56px;
aspect-ratio: 210 / 297;
flex-shrink: 0;
overflow: hidden;
border-radius: 3px;
border: 1px solid var(--midgrijs);
box-shadow: 0 2px 8px rgba(0,0,0,.3);
}
.header-magazine-cover { width: 100%; height: 100%; object-fit: cover; display: block; }
.header-magazine-label {
position: absolute;
inset: 0;
display: flex;
align-items: flex-start;
justify-content: center;
padding-top: 4px;
background: linear-gradient(0deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.8) 100%);
color: #fff;
font-size: .55rem;
font-weight: 700;
letter-spacing: .05em;
text-transform: uppercase;
}
@media (min-width: 601px) {
.header-magazine-link { display: block; }
}
.tip-meta-box { padding: 0.5rem 0; }
@media (max-width: 600px) {
.tip-rijen { grid-template-columns: 1fr; }
.tip-footer { flex-direction: column; align-items: flex-start; }
.tip-knop { width: 100%; text-align: center; }
.tip-captcha-rij { flex-direction: column; align-items: flex-start; }
.video-rijen { grid-template-columns: 1fr; }
.video-footer { flex-direction: column; align-items: flex-start; }
.video-verzenden { width: 100%; text-align: center; }
.video-captcha-rij { flex-direction: column; align-items: flex-start; }
.video-bestand-rij { flex-direction: column; align-items: flex-start; } .tip-veld input[type="text"],
.tip-veld input[type="email"],
.tip-veld textarea,
.video-veld input[type="text"],
.video-veld input[type="email"],
.video-veld select,
.video-veld textarea {
font-size: 16px;
}
}  .zwemweer-eiphone { }
.zwemweer-eiphone .bnsp-zw-wrap {
display: block;
width: 100%;
} .fotowedstrijd-cta {
display: flex;
align-items: center;
gap: .9rem;
background: linear-gradient(135deg, #cdf4f1 0%, #7fdcd6 100%);
color: #0b3d42;
border-left: 4px solid #ff5f56;
border-radius: 0 8px 8px 0;
padding: 1rem 1.2rem;
text-decoration: none;
transition: transform .15s, box-shadow .15s;
box-shadow: 0 4px 14px rgba(15,154,163,.2);
}
.fotowedstrijd-cta:hover, .fotowedstrijd-cta:focus-visible { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(15,154,163,.3); }
.fotowedstrijd-cta-icoon { font-size: 1.8rem; flex-shrink: 0; line-height: 1; }
.fotowedstrijd-cta-tekst { display: flex; flex-direction: column; gap: .2rem; min-width: 0; }
.fotowedstrijd-cta-kop {
font-family: var(--serif);
font-weight: 700;
font-size: 1.05rem;
color: #0b3d42;
}
.fotowedstrijd-cta-sub { font-size: .8rem; color: #2b5b5f; line-height: 1.4; }
.fotowedstrijd-cta-pijl { margin-left: auto; color: #ff5f56; font-size: 1.3rem; flex-shrink: 0; }
.fotowedstrijd-overlay {
position: fixed;
inset: 0;
background: rgba(0,0,0,.75);
z-index: 99999;
display: flex;
align-items: center;
justify-content: center;
padding: 2rem 1rem;
}
.fotowedstrijd-overlay-kaart {
position: relative;
width: 100%;
max-width: 640px;
max-height: 92vh;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 24px 64px rgba(0,0,0,.5);
}
.fotowedstrijd-overlay-scroll {
max-height: 92vh;
overflow-y: auto;
}
.fotowedstrijd-overlay-scroll .tip-sectie { margin: 0; border-radius: 10px; } .fotowedstrijd-overlay-scroll .tip-sectie { padding: 1.5rem 1.6rem 1.3rem; }
.fotowedstrijd-overlay-scroll .tip-header { margin-bottom: 1rem; padding-bottom: .9rem; }
.fotowedstrijd-overlay-scroll .tip-formulier { gap: .8rem; } .fotowedstrijd-overlay-scroll .tip-rijen {
display: grid;
grid-template-columns: 1fr 1fr;
column-gap: .8rem;
row-gap: .3rem;
}
.fotowedstrijd-overlay-scroll .tip-rijen .tip-veld { display: contents; }
.fotowedstrijd-overlay-scroll .tip-rijen .tip-veld:nth-child(1) label { grid-column: 1; grid-row: 1; }
.fotowedstrijd-overlay-scroll .tip-rijen .tip-veld:nth-child(1) input { grid-column: 1; grid-row: 2; }
.fotowedstrijd-overlay-scroll .tip-rijen .tip-veld:nth-child(2) label { grid-column: 2; grid-row: 1; }
.fotowedstrijd-overlay-scroll .tip-rijen .tip-veld:nth-child(2) input { grid-column: 2; grid-row: 2; }
.fotowedstrijd-overlay-scroll .tip-veld { gap: .3rem; }
.fotowedstrijd-overlay-scroll .tip-veld input[type="text"],
.fotowedstrijd-overlay-scroll .tip-veld input[type="email"],
.fotowedstrijd-overlay-scroll .tip-veld textarea { padding: .55rem .8rem; }
.fotowedstrijd-overlay-scroll .tip-veld textarea { min-height: 80px; } .fotowedstrijd-overlay-scroll .tip-sectie {
background: linear-gradient(160deg, #cdf4f1 0%, #8fe0dc 60%, #5ecfc9 100%);
border-left: 4px solid #ff5f56;
color: #0b3d42;
}
.fotowedstrijd-overlay-scroll .tip-header { border-bottom-color: rgba(11,61,66,.18); }
.fotowedstrijd-overlay-scroll .tip-titel { color: #000; }
.fotowedstrijd-overlay-scroll .tip-subtitel { color: #2b5b5f; }
.fotowedstrijd-overlay-scroll .tip-veld label { color: #0b3d42; }
.fotowedstrijd-overlay-scroll .tip-veld-hint { color: #3a6b6e; }
.fotowedstrijd-overlay-scroll .tip-veld-vereist { color: #c93a30; }
.fotowedstrijd-overlay-scroll .tip-veld input[type="text"],
.fotowedstrijd-overlay-scroll .tip-veld input[type="email"],
.fotowedstrijd-overlay-scroll .tip-veld textarea {
background: rgba(255,255,255,.6);
border-color: rgba(11,61,66,.3);
color: #0b3d42;
}
.fotowedstrijd-overlay-scroll .tip-veld input::placeholder,
.fotowedstrijd-overlay-scroll .tip-veld textarea::placeholder { color: rgba(11,61,66,.5); }
.fotowedstrijd-overlay-scroll .tip-veld input:focus,
.fotowedstrijd-overlay-scroll .tip-veld textarea:focus {
border-color: #ff5f56;
box-shadow: 0 0 0 3px rgba(255,95,86,.25);
}
.fotowedstrijd-overlay-scroll .tip-foto-knop { border-color: rgba(11,61,66,.4); color: #0b3d42; background: rgba(255,255,255,.35); }
.fotowedstrijd-overlay-scroll .tip-foto-knop:hover { border-color: #0b3d42; background: rgba(255,255,255,.55); }
.fotowedstrijd-overlay-scroll .tip-foto-hint { color: #3a6b6e; } .tip-veld label.tip-rechten-label { text-transform: none; letter-spacing: normal; }
.fotowedstrijd-overlay-scroll .tip-rechten-label { color: #0b3d42; }
.fotowedstrijd-overlay-scroll .tip-fout { color: #7a1a12; background: rgba(255,255,255,.6); padding: .5rem .7rem; border-radius: 4px; font-weight: 600; }
.fotowedstrijd-overlay-scroll .tip-succes { color: #073c33; background: rgba(255,255,255,.75); padding: .7rem .9rem; border-radius: 4px; font-weight: 600; }
.fotowedstrijd-overlay-scroll .tip-knop {
background: #e8483d;
color: #fff;
box-shadow: 0 3px 10px rgba(232,72,61,.35);
}
.fotowedstrijd-overlay-scroll .tip-knop:hover { background: #d43a30; }
.fotowedstrijd-overlay-sluiten {
position: absolute;
top: .7rem;
right: .7rem;
z-index: 2;
width: 32px;
height: 32px;
border-radius: 50%;
background: rgba(0,0,0,.45);
color: #fff;
border: 0;
font-size: 1.1rem;
line-height: 1;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
.fotowedstrijd-overlay-sluiten:hover { background: rgba(0,0,0,.65); }
@media (max-width: 480px) {
.fotowedstrijd-cta { padding: .85rem 1rem; gap: .7rem; }
.fotowedstrijd-cta-icoon { font-size: 1.5rem; }
.fotowedstrijd-cta-kop { font-size: .95rem; }
.fotowedstrijd-cta-sub { font-size: .76rem; }
} .stelling-widget {
background: var(--zwart);
color: var(--wit);
padding: 1.8rem 2rem;
margin: 2rem 0;
border-left: 4px solid #f0c040;
border-radius: 0 8px 8px 0;
}
.stelling-kop {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 1rem;
margin-bottom: 1.2rem;
flex-wrap: wrap;
}
.stelling-label {
font-size: 0.72rem;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #f0c040;
}
.stelling-datum {
font-size: 0.7rem;
color: #666;
}
.stelling-tekst {
font-family: var(--serif);
font-size: clamp(1.1rem, 2.5vw, 1.5rem);
font-weight: 700;
line-height: 1.35;
color: var(--wit);
border: none;
padding: 0;
margin: 0 0 1.6rem;
quotes: "\201E" "\201D";
}
.stelling-tekst::before { content: open-quote;  color: #f0c040; margin-right: 0.15em; }
.stelling-tekst::after  { content: close-quote; color: #f0c040; margin-left:  0.15em; }
.stelling-actie {
display: flex;
gap: 1rem;
flex-wrap: wrap;
}
.stelling-btn {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.7rem 1.8rem;
font-size: 0.9rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
border: 2px solid transparent;
border-radius: 3px;
cursor: pointer;
transition: background 0.15s, border-color 0.15s, transform 0.1s;
}
.stelling-btn:active { transform: scale(0.97); }
.stelling-btn:disabled { opacity: 0.5; cursor: default; }
.stelling-btn-eens {
background: #2e7d32;
color: var(--wit);
border-color: #2e7d32;
}
.stelling-btn-eens:hover:not(:disabled) { background: #1b5e20; border-color: #1b5e20; }
.stelling-btn-oneens {
background: transparent;
color: #ff6b6b;
border-color: #b71c1c;
}
.stelling-btn-oneens:hover:not(:disabled) { background: #b71c1c; color: var(--wit); } .stelling-resultaat { margin-top: 1.2rem; }
.stelling-balk-rij {
display: flex;
align-items: center;
gap: 0.6rem;
margin-bottom: 0.6rem;
padding: 0.4rem 0.6rem;
border-radius: 3px;
transition: background 0.2s;
}
.stelling-eigen-stem { background: rgba(240,192,64,0.1); }
.stelling-balk-naam {
font-size: 0.78rem;
font-weight: 600;
color: #aaa;
min-width: 3.5rem;
}
.stelling-balk-bg {
flex: 1;
background: #2a2a2a;
height: 8px;
border-radius: 4px;
overflow: hidden;
}
.stelling-balk {
height: 100%;
border-radius: 4px;
transition: width 0.6s cubic-bezier(.4,0,.2,1);
}
.stelling-balk-groen { background: #2e7d32; }
.stelling-balk-rood  { background: #b71c1c; }
.stelling-balk-pct {
font-size: 0.8rem;
font-weight: 700;
min-width: 2.8rem;
text-align: right;
color: var(--wit);
}
.stelling-balk-n {
font-size: 0.7rem;
color: #666;
min-width: 3rem;
}
.stelling-totaal {
font-size: 0.72rem;
color: #555;
margin-top: 0.6rem;
text-align: right;
font-style: italic;
} .stelling-topper {
display: none;
margin-top: 1rem;
padding: 0.65rem 1.2rem;
background: #f0c040;
color: #111;
font-weight: 700;
font-size: 0.95rem;
border-radius: 3px;
text-align: center;
opacity: 0;
transform: translateY(-6px);
transition: opacity 0.3s ease, transform 0.3s ease;
}
.stelling-topper-zichtbaar {
display: block;
opacity: 1 !important;
transform: translateY(0) !important;
}
.stelling-topper-weg {
opacity: 0 !important;
transform: translateY(-6px) !important;
transition: opacity 0.5s ease, transform 0.5s ease !important;
}
@media (max-width: 600px) {
.stelling-widget { padding: 1.2rem; }
.stelling-actie { flex-direction: column; }
.stelling-btn { justify-content: center; }
} .absurdometer {
background: var(--zwart);
color: var(--wit);
padding: 1.8rem 2rem;
margin: 2rem 0;
border-left: 4px solid var(--rood);
}
.absurdometer-kop {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
margin-bottom: 1.6rem;
flex-wrap: wrap;
}
.absurdometer-titel-rij {
display: flex;
align-items: center;
gap: 0.9rem;
}
.absurdometer-icoon { font-size: 1.8rem; line-height: 1; }
.absurdometer-titel {
display: block;
font-family: var(--serif);
font-size: 1.15rem;
font-weight: 700;
}
.absurdometer-datum {
display: block;
font-size: 0.72rem;
color: #777;
margin-top: 0.1rem;
letter-spacing: 0.04em;
}
.absurdometer-deel {
display: inline-flex;
align-items: center;
gap: 0.45rem;
background: #25d366;
color: var(--wit);
padding: 0.45rem 1rem;
font-size: 0.78rem;
font-weight: 700;
border-radius: 3px;
transition: opacity 0.15s;
white-space: nowrap;
}
.absurdometer-deel:hover { opacity: 0.85; color: var(--wit); }
.absurdometer-metingen {
display: flex;
flex-direction: column;
gap: 1rem;
}
.meting-rij { }
.meting-label-rij {
display: flex;
align-items: baseline;
gap: 0.5rem;
margin-bottom: 0.35rem;
}
.meting-icoon { font-size: 1rem; flex-shrink: 0; }
.meting-naam {
font-size: 0.82rem;
font-weight: 600;
color: #ccc;
flex: 1;
}
.meting-status {
font-size: 0.72rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
}
.meting-pct {
font-size: 0.7rem;
color: #555;
font-variant-numeric: tabular-nums;
min-width: 2.4rem;
text-align: right;
}
.meting-volksstand {
font-size: 0.65rem;
font-weight: 700;
color: #f0c040;
letter-spacing: 0.04em;
background: rgba(240,192,64,0.12);
padding: 0.1rem 0.35rem;
border-radius: 2px;
margin-left: 0.2rem;
}
.meting-balk-rij {
display: flex;
align-items: center;
gap: 0.5rem;
}
.meting-btn {
flex-shrink: 0;
width: 22px;
height: 22px;
border-radius: 50%;
border: 1px solid #444;
background: #1e1e1e;
color: #aaa;
font-size: 1rem;
font-weight: 700;
line-height: 1;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: background 0.15s, color 0.15s, border-color 0.15s, transform 0.1s;
padding: 0;
user-select: none;
}
.meting-btn:hover {
background: var(--rood);
border-color: var(--rood);
color: var(--wit);
}
.meting-btn:active { transform: scale(0.88); }
.meting-balk-bg {
flex: 1;
background: #2a2a2a;
height: 7px;
border-radius: 4px;
overflow: hidden;
}
.meting-balk {
height: 100%;
width: var(--balk-breedte, 50%);
background: var(--balk-kleur, var(--rood));
border-radius: 4px;
transform-origin: left center;
transform: scaleX(0);
animation: balk-in 0.6s cubic-bezier(.4,0,.2,1) forwards;
animation-delay: var(--balk-delay, 0s);
}
@keyframes balk-in {
from { transform: scaleX(0); }
to   { transform: scaleX(1); }
}
.absurdometer-disclaimer {
margin-top: 1.2rem;
font-size: 0.68rem;
color: #555;
font-style: italic;
}
@keyframes meting-pulse {
0%   { background: transparent; }
30%  { background: rgba(204,0,0,0.08); }
100% { background: transparent; }
}
.meting-geduwd { animation: meting-pulse 0.4s ease; }
.absurdometer-handmatig-badge {
display: inline-block;
background: #333;
color: #f0c040;
font-size: 0.65rem;
font-style: normal;
font-weight: 600;
letter-spacing: 0.06em;
padding: 0.1rem 0.4rem;
border-radius: 2px;
vertical-align: middle;
margin-left: 0.3rem;
}
@media (max-width: 600px) { .absurdometer { padding: 1.2rem 1rem; }
.absurdometer-kop { flex-direction: column; align-items: flex-start; }
.absurdometer-metingen { gap: 0.85rem; } .meting-label-rij {
flex-wrap: wrap;
gap: 0.15rem 0.4rem;
margin-bottom: 0.4rem;
}
.meting-icoon { font-size: 0.9rem; }
.meting-naam {
font-size: 0.8rem;
flex: 1 1 0;
min-width: 0;
}
.meting-status {
font-size: 0.68rem;
margin-left: 1.4rem; }
.meting-pct { font-size: 0.68rem; }
.meting-volksstand { font-size: 0.62rem; } .meting-btn {
width: 30px;
height: 30px;
font-size: 1.1rem;
}
.meting-balk-bg { height: 8px; } .stelling-widget { padding: 1.2rem 1rem; }
} .header-sociaal {
display: flex;
align-items: center;
gap: 0.6rem;
min-width: 80px;
}
.header-sociaal-rechts { justify-content: flex-end; }
.header-datum {
color: #aaa;
font-size: 0.72rem;
font-family: var(--sans);
letter-spacing: 0.04em;
text-align: right;
line-height: 1.3;
}
.header-sociaal-link {
display: flex;
align-items: center;
justify-content: center;
color: #aaa;
transition: color 0.15s;
line-height: 1;
}
.header-sociaal-link:hover { color: var(--wit); } .tip-instagram-rij {
display: grid;
grid-template-columns: 2fr 1fr;
gap: 2rem;
align-items: start;
margin: 2rem 0 3rem;
} .tip-stelling-rij {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1.5rem;
align-items: stretch;
margin: 2rem 0;
}
@media (max-width: 900px) {
.tip-stelling-rij { grid-template-columns: 1fr; }
}
.tip-stelling-rij .stelling-widget {
margin: 0;
display: flex;
flex-direction: column;
justify-content: center;
} .instagram-kolom {
background: var(--wit);
border: 1px solid #e8e8e8;
overflow: hidden;
}
.instagram-header {
background: var(--zwart);
padding: 0.7rem 1rem;
}
.instagram-titel {
display: flex;
align-items: center;
gap: 0.5rem;
color: var(--wit);
font-size: 0.85rem;
font-weight: 600;
text-decoration: none;
}
.instagram-titel:hover { color: #e1306c; }
.instagram-titel svg { flex-shrink: 0; } .instagram-kolom .sb_instagram_header,
.instagram-kolom .sbi_bio,
.instagram-kolom .sbi_follow_btn,
.instagram-kolom .sbi_load { display: none !important; } .instagram-kolom #sb_instagram {
padding: 0 !important;
margin: 0 !important;
} .instagram-kolom .sbi {
display: grid !important;
grid-template-columns: repeat(3, 1fr) !important;
gap: 3px !important;
padding: 3px !important;
margin: 0 !important;
width: 100% !important;
box-sizing: border-box !important;
float: none !important;
} .instagram-kolom .sbi_item {
width: 100% !important;
float: none !important;
padding: 0 !important;
box-sizing: border-box !important;
overflow: hidden !important;
} .instagram-kolom .sbi_photo_wrap {
display: block !important;
position: relative !important;
width: 100% !important;
aspect-ratio: 1 / 1 !important;
overflow: hidden !important;
} .instagram-kolom .sbi_photo_wrap img {
position: absolute !important;
inset: 0 !important;
width: 100% !important;
height: 100% !important;
object-fit: cover !important;
display: block !important;
} .instagram-placeholder {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
gap: 1rem;
padding: 2rem 1rem;
min-height: 200px;
background: #fafafa;
border: 1px solid #eee;
border-radius: 4px;
}
.instagram-placeholder-icon {
color: #c13584;
opacity: 0.7;
}
.instagram-placeholder p {
color: #555;
font-size: 0.9rem;
margin: 0;
max-width: 220px;
line-height: 1.5;
}
.instagram-volg-knop {
display: inline-block;
background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
color: #fff;
font-weight: 700;
font-size: 0.85rem;
padding: 0.5rem 1.2rem;
border-radius: 20px;
text-decoration: none;
transition: opacity 0.2s;
}
.instagram-volg-knop:hover { opacity: 0.85; color: #fff; }
@media (max-width: 900px) {
.tip-instagram-rij { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
.header-inner { flex-wrap: wrap; justify-content: center; }
} .barnespeld-adv {
position: relative;
text-align: center;
margin: 1.5rem 0;
}
.barnespeld-adv img {
max-width: 100%;
height: auto;
display: inline-block;
}
.barnespeld-adv .adv-label {
display: block;
font-size: 0.62rem;
color: #aaa;
text-transform: uppercase;
letter-spacing: .08em;
margin-bottom: .3rem;
} .adv-header {
display: flex;
justify-content: center;
padding: .75rem 0;
border-top: 1px solid #222;
overflow: hidden;
}
.adv-header img {
max-width: 100%;
height: auto;
} .adv-artikelen {
grid-column: 1 / -1; } .adv-footer-mobiel {
display: none;
margin-bottom: 0;
padding: .5rem 1rem;
background: #111;
}
@media (max-width: 767px) {
.adv-footer-mobiel { display: block; }
} .adv-formulier {
max-width: 680px;
margin: 0 auto;
}
.adv-formulier h3 {
font-family: var(--serif);
font-size: 1.1rem;
margin: 2rem 0 1rem;
padding-bottom: .4rem;
border-bottom: 2px solid var(--rood);
}
.adv-formulier h3:first-child { margin-top: 0; }
.adv-veld {
margin-bottom: 1.2rem;
}
.adv-veld label {
display: block;
font-weight: 600;
font-size: .85rem;
margin-bottom: .35rem;
color: var(--zwart);
}
.adv-veld input[type="text"],
.adv-veld input[type="email"],
.adv-veld input[type="url"],
.adv-veld select,
.adv-veld textarea {
width: 100%;
padding: .6rem .8rem;
border: 1px solid #ccc;
border-radius: 3px;
font-size: .9rem;
font-family: inherit;
background: #fafafa;
transition: border-color .15s;
}
.adv-veld input:focus,
.adv-veld select:focus,
.adv-veld textarea:focus {
border-color: var(--rood);
outline: none;
background: #fff;
}
.adv-veld input[type="file"] {
font-size: .85rem;
padding: .4rem 0;
}
.adv-veld small {
display: block;
font-size: .78rem;
color: #888;
margin-top: .3rem;
line-height: 1.5;
} .adv-formaten {
display: flex;
flex-direction: column;
gap: .6rem;
}
.adv-formaat-optie {
display: flex;
align-items: flex-start;
gap: .75rem;
padding: .85rem 1rem;
border: 2px solid #ddd;
border-radius: 4px;
cursor: pointer;
transition: border-color .15s, background .15s;
}
.adv-formaat-optie:hover { border-color: #aaa; }
.adv-formaat-optie input[type="radio"] {
width: auto;
margin-top: .2rem;
flex-shrink: 0;
accent-color: var(--rood);
}
.adv-formaat-optie input[type="radio"]:checked ~ .adv-formaat-inhoud {
color: var(--zwart);
}
.adv-formaat-optie:has(input:checked) {
border-color: var(--rood);
background: #fff8f8;
}
.adv-formaat-inhoud {
display: flex;
flex-direction: column;
gap: .2rem;
}
.adv-formaat-inhoud strong {
font-size: .9rem;
}
.adv-formaat-inhoud small {
color: #777;
font-size: .78rem;
margin: 0;
}
.adv-formaat-prijs {
font-size: .82rem;
font-weight: 700;
color: var(--rood);
}
.adv-klein {
font-size: .78rem;
color: #888;
line-height: 1.6;
margin: 1.2rem 0;
border-left: 3px solid #ddd;
padding-left: .75rem;
}
.adv-verzenden {
display: inline-block;
background: var(--rood);
color: var(--wit);
font-weight: 700;
font-size: 1rem;
padding: .75rem 2rem;
border: none;
border-radius: 3px;
cursor: pointer;
transition: opacity .15s;
}
.adv-verzenden:hover { opacity: .85; } .adv-beschikbaar {
display: block;
font-size: 0.78rem;
margin-top: 4px;
font-weight: 600;
} .voorlezen-player {
float: right;
width: 150px;
margin: 0.2rem 0 1.6rem 2rem;
background: #fff;
border: 1px solid #e0e0e0;
border-top: 4px solid var(--rood);
border-radius: 4px;
padding: 1rem 0.9rem 0.9rem;
display: flex;
flex-direction: column;
align-items: center;
gap: 0.5rem;
text-align: center;
box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.voorlezen-btn {
background: none;
border: none;
color: var(--rood);
cursor: pointer;
padding: 0;
line-height: 0;
flex-shrink: 0;
transition: filter .15s, transform .12s;
}
.voorlezen-btn svg { width: 50px; height: 58px; display: block; }
.voorlezen-btn:hover { filter: brightness(.82); transform: scale(1.07); }
@media (prefers-reduced-motion: no-preference) {
.voorlezen-btn svg, .eiphone-play svg { transform-origin: 50% 100%; }
.voorlezen-btn svg.ei-wiebel, .eiphone-play svg.ei-wiebel {
animation: ei-wiebel 1s ease-in-out 1 both;
}
}
@keyframes ei-wiebel {
0%   { transform: rotate(0deg); }
15%  { transform: rotate(-9deg); }
32%  { transform: rotate(7deg); }
48%  { transform: rotate(-4deg); }
64%  { transform: rotate(2deg); }
80%  { transform: rotate(-1deg); }
100% { transform: rotate(0deg); }
}
.voorlezen-tekst { display: flex; flex-direction: column; align-items: center; gap: 0.2rem; width: 100%; }
.voorlezen-label {
font-family: var(--sans); font-size: 0.68rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--zwart);
} .voorlezen-balk-rij {
display: flex;
visibility: hidden; align-items: center;
gap: 0.5rem;
width: 100%;
}
.voorlezen-balk-rij.vl-balk-zichtbaar {
visibility: visible;
}
.voorlezen-tijd {
font-family: var(--sans); font-size: 0.68rem;
color: var(--midgrijs);
font-variant-numeric: tabular-nums;
white-space: nowrap;
flex-shrink: 0;
}
.voorlezen-balk-wrap {
flex: 1;
}
.voorlezen-balk {
width: 100%;
height: 4px;
background: #e0e0e0;
border-radius: 2px;
cursor: pointer;
position: relative;
display: block;
touch-action: manipulation;
}
.voorlezen-balk-vulling {
height: 100%;
background: var(--rood);
border-radius: 2px;
width: 0%;
pointer-events: none;
}
html.nachtmodus .voorlezen-player {
background: #2a2a2a;
border-color: #3a3a3a;
border-top-color: var(--rood);
box-shadow: 0 2px 8px rgba(0,0,0,.3);
color: #ccc;
}
html.nachtmodus .voorlezen-label { color: #aaa; }
html.nachtmodus .voorlezen-tijd { color: #888; }
html.nachtmodus .voorlezen-balk { background: #3a3a3a; }
html.nachtmodus .vl-cast-btn { color: #ccc; }
html.nachtmodus .vl-cast-btn.vl-cast-verbonden { color: #fff; }
html.nachtmodus .vl-golf-staaf { background: #555; }
@media (max-width: 680px) {
.voorlezen-player {
float: none;
width: 100%;
flex-direction: row;
align-items: center;
text-align: left;
padding: 0.5rem 0.8rem;
margin: 0 0 1.2rem 0;
gap: 0.8rem;
}
.voorlezen-btn svg { width: 38px; height: 44px; }
.voorlezen-tekst { align-items: flex-start; flex: 1; min-width: 0; } .voorlezen-balk-rij {
visibility: visible;
min-height: 1.2rem;
}
.voorlezen-tijd {
min-width: 7ch; } .vl-golf-wrap { display: none !important; }
}
.vl-onderste-rij {
display: flex;
align-items: center;
justify-content: center;
gap: .6rem;
}
.vl-cast-btn {
background: none;
border: none;
color: #aaa;
cursor: pointer;
padding: .15rem;
line-height: 0;
transition: color .15s;
}
.vl-cast-btn:hover { color: #333; }
.vl-cast-btn.vl-cast-verbonden { color: var(--rood); }
.vl-vol-wrap { position: relative; display: flex; align-items: center; }
.vl-vol-btn {
background: none;
border: none;
color: #aaa;
cursor: pointer;
padding: .15rem;
line-height: 0;
transition: color .15s;
}
.vl-vol-btn:hover { color: #333; }
.vl-vol-popup {
display: none;
position: absolute;
bottom: calc(100% + .5rem);
left: 50%;
transform: translateX(-50%);
background: #fff;
border: 1px solid #e0e0e0;
border-radius: 8px;
padding: .75rem .5rem;
box-shadow: 0 2px 8px rgba(0,0,0,.1);
z-index: 20;
}
.vl-vol-popup.open { display: block; }
.vl-vol-slider {
writing-mode: vertical-lr;
direction: rtl;
width: 28px;
height: 90px;
cursor: pointer;
accent-color: var(--rood);
}
html.nachtmodus .vl-vol-btn { color: #ccc; }
html.nachtmodus .vl-vol-popup { background: #1a1a1a; border-color: #333; }
@media (max-width: 680px) {
.vl-vol-popup {
left: auto;
right: 0;
transform: none;
padding: .6rem .75rem;
}
.vl-vol-slider {
-webkit-appearance: auto;
writing-mode: initial;
direction: initial;
width: 90px;
height: 28px;
}
} .eiphone {
background: #111;
border-top: 3px solid var(--rood);
color: #e0e0e0;
border-radius: 0 0 4px 4px;
margin: 1rem 0 1.8rem;
overflow: hidden;
container-type: inline-size;
}
.eiphone-header {
display: flex;
align-items: center;
gap: .6rem;
padding: .6rem 1rem;
background: #1a1a1a;
border-bottom: 1px solid #222;
}
.eiphone-logo { color: var(--rood); flex-shrink: 0; line-height: 0; }
.eiphone-titel-blok { display: flex; flex-direction: column; gap: .05rem; min-width: 0; overflow: hidden; }
.eiphone-naam {
font-family: var(--serif);
font-size: 1rem;
font-weight: 700;
color: #fff;
letter-spacing: .18em;
text-transform: uppercase;
}
.eiphone-weeklabel { font-size: .67rem; color: #999; }
.eiphone-week-knoppen { margin-left: auto; display: flex; gap: .3rem; flex-shrink: 0; }
.eiphone-weekbtn {
background: none;
border: 1px solid #555;
color: #aaa;
font-size: .78rem;
padding: .28rem .75rem;
border-radius: 20px;
cursor: pointer;
font-family: var(--sans);
transition: all .15s;
white-space: nowrap;
}
.eiphone-weekbtn.actief,
.eiphone-weekbtn:hover { background: var(--rood); border-color: var(--rood); color: #fff; } .eiphone-speler {
display: flex;
flex-direction: column;
gap: .55rem;
padding: .8rem 1rem;
border-bottom: 1px solid #222;
}
.eiphone-controls {
display: grid;
grid-template-columns: 1fr auto 1fr;
align-items: center;
width: 100%;
}
.eiphone-controls-links  { display: flex; align-items: center; justify-content: flex-end; gap: .2rem; }
.eiphone-controls-rechts { display: flex; align-items: center; gap: .3rem; }
.eiphone-volume-wrap { position: relative; }
.eiphone-volume-btn {
background: none;
border: none;
color: #777;
cursor: pointer;
padding: .45rem;
line-height: 0;
transition: color .15s;
}
.eiphone-volume-btn:hover { color: #eee; }
.eiphone-volume-popup {
display: none;
position: absolute;
bottom: calc(100% + .5rem);
left: 50%;
transform: translateX(-50%);
background: #1a1a1a;
border: 1px solid #333;
border-radius: 8px;
padding: .75rem .5rem;
z-index: 20;
}
.eiphone-volume-popup.open { display: block; }
.eiphone-volume-slider {
writing-mode: vertical-lr;
direction: rtl;
width: 28px;
height: 90px;
cursor: pointer;
accent-color: var(--rood);
}
@media (max-width: 680px) {
.eiphone-volume-popup {
left: 0;
transform: none;
padding: .6rem .75rem;
}
.eiphone-volume-slider {
-webkit-appearance: auto;
writing-mode: initial;
direction: initial;
width: 90px;
height: 28px;
}
}
#eiphone-play { margin: 0 .8rem; }
.eiphone-skip {
background: none;
border: none;
color: #777;
cursor: pointer;
padding: .45rem;
line-height: 0;
transition: color .15s;
}
.eiphone-skip:hover { color: #eee; }
.eiphone-skip:disabled { color: #2a2a2a; cursor: not-allowed; }
.eiphone-cast {
background: none;
border: none;
color: #777;
cursor: pointer;
padding: .2rem;
line-height: 0;
transition: color .15s;
margin-left: .2rem;
}
.eiphone-cast:hover { color: #eee; }
.eiphone-cast.verbonden { color: var(--rood); }
.eiphone-play {
background: none;
border: none;
color: var(--rood);
cursor: pointer;
padding: 0;
line-height: 0;
flex-shrink: 0;
transition: filter .15s, transform .12s;
}
.eiphone-play svg { width: 62px; height: 72px; display: block; }
.eiphone-play:hover { filter: brightness(.82); transform: scale(1.07); }
.eiphone-play:disabled { color: #2a2a2a; cursor: not-allowed; transform: none; filter: none; } .eiphone-info { min-width: 0; display: flex; flex-direction: column; gap: .35rem; }
.eiphone-info-boven { display: flex; align-items: center; gap: .65rem; min-width: 0; }
.eiphone-nu-afb {
width: 104px;
height: 104px;
object-fit: cover;
object-position: center top;
border-radius: 3px;
flex-shrink: 0;
opacity: 0;
transition: opacity .3s;
display: none;
}
.eiphone-nu-afb.zichtbaar { display: block; opacity: 1; }
.eiphone-nu-tekst {
display: flex;
flex-direction: column;
gap: .15rem;
flex: 1;
min-width: 0;
}
.eiphone-nu-label {
font-size: .68rem;
text-transform: uppercase;
letter-spacing: .12em;
color: var(--rood);
}
.eiphone-nu-titel {
font-size: .82rem;
color: #ddd;
overflow: hidden;
flex: 1;
} .eiphone-analyse-label {
font-size: .68rem;
color: #f0b400;
line-height: 1.25;
margin-top: .1rem;
}
#ep-titel-inner {
display: inline-block;
white-space: nowrap;
}
@keyframes ep-titel-slide {
0%, 10%   { transform: translateX(0); }
45%, 65%  { transform: translateX(var(--slide, 0)); }
90%, 100% { transform: translateX(0); }
}
#ep-titel-inner.scrollen {
animation: ep-titel-slide 12s ease-in-out infinite;
}
.eiphone-balk-outer {
height: 36px;
cursor: pointer;
display: flex;
align-items: center;
gap: 2px;
}
.ep-golf-staaf {
flex: 1;
min-width: 0;
border-radius: 2px;
background: #252525;
transform-origin: center;
transition: background .08s;
}
.ep-golf-staaf.ep-golf-aan {
background: var(--rood);
}
.ep-golf-staaf.ep-golf-hoofd {
background: #ff7070;
animation: none !important;
}
@keyframes ep-golf-adem {
0%, 100% { transform: scaleY(1.0); }
50%       { transform: scaleY(0.5); }
}
#eiphone.speelt .ep-golf-staaf.ep-golf-aan {
animation: ep-golf-adem 2s ease-in-out infinite;
animation-delay: calc(var(--ei, 0) * -0.055s);
}
.eiphone-tijd { font-size: .68rem; color: #666; white-space: nowrap; } .eiphone-lijst-wrap {
max-height: 190px;
overflow-y: auto;
scrollbar-width: auto;
scrollbar-color: #666 #1a1a1a;
}
.eiphone-lijst-wrap::-webkit-scrollbar { width: 8px; }
.eiphone-lijst-wrap::-webkit-scrollbar-track { background: #1a1a1a; }
.eiphone-lijst-wrap::-webkit-scrollbar-thumb { background: #666; border-radius: 4px; border: 2px solid #1a1a1a; }
.eiphone-lijst-wrap::-webkit-scrollbar-thumb:hover { background: #999; }
.eiphone-item {
display: flex;
align-items: baseline;
gap: .5rem;
padding: .32rem .9rem;
border-bottom: 1px solid #181818;
cursor: pointer;
transition: background .1s;
}
.eiphone-item:hover { background: #1c1c1c; }
.eiphone-item.actief {
background: #1f0000;
border-left: 2px solid var(--rood);
padding-left: calc(.9rem - 2px);
}
.eiphone-dag { cursor: default; padding: .22rem .9rem .14rem; }
.eiphone-dag:hover { background: transparent; }
.ep-dag-naam {
font-size: .62rem;
text-transform: uppercase;
letter-spacing: .14em;
color: var(--rood);
font-weight: 700;
}
.ep-art-titel {
font-size: .78rem;
color: #bbb;
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.eiphone-art:hover .ep-art-titel { color: #fff; }
.ep-art-titel-inner { display: inline-block; white-space: nowrap; }
@keyframes ep-art-slide {
0%, 8%    { transform: translateX(0); }
42%, 62%  { transform: translateX(var(--art-slide, 0)); }
95%, 100% { transform: translateX(0); }
}
.ep-art-titel.kan-scrollen { text-overflow: clip; cursor: default; }
.ep-art-titel.kan-scrollen:hover .ep-art-titel-inner {
animation: ep-art-slide 5s ease-in-out infinite;
}
.ep-art-datum { font-size: .63rem; color: #888; flex-shrink: 0; white-space: nowrap; }
.eiphone-einde { cursor: default; }
.eiphone-einde:hover { background: transparent; }
.ep-einde-tekst { font-size: .72rem; color: #888; font-style: italic; }
.eiphone-status { padding: .8rem 1rem; color: #444; font-size: .78rem; text-align: center; }
.eiphone-bg-logo {
display: flex;
flex-direction: row;
align-items: flex-start;
padding: .8rem 1rem 15px;
color: #fff;
flex-shrink: 0;
user-select: none;
}
.eiphone-bg-links,
.eiphone-bg-rechts {
flex: 1;
display: flex;
align-items: flex-start;
justify-content: center;
padding-top: 24px;
}
.eiphone-bg-centrum {
display: flex;
flex-direction: column;
align-items: center;
gap: .45rem;
pointer-events: none;
}
.ep-logo-ei { opacity: .25; }
.eiphone-bg-centrum span {
font-family: var(--serif);
font-size: .85rem;
font-weight: 700;
letter-spacing: .18em;
text-transform: uppercase;
opacity: .25;
}
.eiphone-bg-tagline {
font-family: var(--sans, sans-serif) !important;
font-size: .6rem !important;
font-weight: 400 !important;
letter-spacing: .06em !important;
text-transform: none !important;
opacity: .18 !important;
padding-bottom: 15px;
}
.eiphone-podcast-link {
color: #fff;
opacity: .3;
transition: opacity .2s;
line-height: 0;
}
.eiphone-podcast-link:hover { opacity: .65; }
@keyframes ep-radio-puls {
0%, 15%, 85%, 100% { opacity: 0; }
40%, 60%            { opacity: .65; }
} .ep-logo-dot    { animation: ep-radio-puls 3s ease-in-out infinite; }
.ep-logo-golf-1 { animation: ep-radio-puls 3s ease-in-out infinite; animation-delay: .7s; }
.ep-logo-golf-2 { animation: ep-radio-puls 3s ease-in-out infinite; animation-delay: 1.4s; }
@container (max-width: 460px) {
.eiphone-header { flex-wrap: wrap; gap: .4rem; }
.eiphone-weekbtn { padding: .22rem .6rem; font-size: .73rem; }
}
@media (max-width: 480px) {
.eiphone-header { flex-wrap: wrap; gap: .4rem; }
.eiphone-weekbtn { padding: .22rem .6rem; font-size: .73rem; }
.eiphone-lijst-wrap { max-height: 160px; }
}  .nacht-toggle {
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
background: none;
border: none;
cursor: pointer;
color: #fff;
padding: 2px;
transition: color 0.15s;
line-height: 0;
} .nacht-toggle:not(.nacht-toggle-desk) { display: none; }
.nacht-toggle:hover { color: #fff; } .nacht-toggle .dag-kip   { display: block; }
.nacht-toggle .nacht-kip { display: none; }
html.nachtmodus .nacht-toggle .dag-kip   { display: none; }
html.nachtmodus .nacht-toggle .nacht-kip { display: block; } .nacht-toggle svg        { color: #fff; }
html.nachtmodus .nacht-toggle svg   { color: #666; } html.nachtmodus .ei-stroke { stroke: #666 !important; }
html.nachtmodus .nacht-toggle { color: #666; }
html.nachtmodus .hamburger    { color: #666; }
@media (max-width: 600px) { .nacht-toggle:not(.nacht-toggle-desk) { display: flex; position: static; transform: none; order: 1; flex: 0 0 36px; }
.site-branding { padding: 0; order: 2; }
}  @media (prefers-color-scheme: dark) {
body { background: var(--zwart); color: #cccccc; }
}
.ig-titel { color: var(--zwart); }
html.nachtmodus .ig-titel { color: #d8d8d8; } html.dagmodus body { background: #ffffff !important; color: #111111 !important; }
html.nachtmodus body { background: var(--zwart) !important;
color: #cccccc;
}
html.nachtmodus a:hover { color: #e06060; } html.nachtmodus .site-title       { color: #777; }
html.nachtmodus .site-title span  { color: #8b3a3a; }
html.nachtmodus .site-tagline     { color: #555; } html.nachtmodus .sectie-label::after   { background: #303030; }
html.nachtmodus .single-meta           { border-bottom-color: #303030; }
html.nachtmodus .deel-sectie           { border-top-color: #303030; border-bottom-color: #303030; } html.nachtmodus .hero-artikel          { background: #1e1e1e; border-color: #2e2e2e; }
html.nachtmodus .hero-tekst .artikel-titel { color: #d8d8d8; }
html.nachtmodus .artikel-intro         { color: #999; } html.nachtmodus .artikel-kaart         { background: #1e1e1e; border-color: #2e2e2e; }
html.nachtmodus .kaart-inhoud .artikel-titel { color: #d4d4d4; } html.nachtmodus .artikel-lijst         { background: #2a2a2a; border-color: #2a2a2a; }
html.nachtmodus .lijst-item            { background: #1c1c1c; }
html.nachtmodus .lijst-item:hover      { background: #222; }
html.nachtmodus .lijst-tekst .artikel-titel { color: #d4d4d4; } html.nachtmodus .single-titel          { color: #d8d8d8; }
html.nachtmodus .single-content        { color: #bfbfbf; }  html.nachtmodus .barometer-sectie,
html.nachtmodus .barometer-widget      { background: #1e1e1e; border-color: #2e2e2e; } html.nachtmodus .tip-sectie input,
html.nachtmodus .tip-sectie textarea,
html.nachtmodus .tip-sectie select     {
background: #222;
color: #ccc;
border-color: #3a3a3a;
} html.nachtmodus .video-insturen input,
html.nachtmodus .video-insturen textarea {
background: #222;
color: #ccc;
border-color: #3a3a3a;
} html.nachtmodus .zijbalk-widget .lijst-item { background: #1c1c1c; } html.nachtmodus .barnespeld-adv img    { opacity: 0.82; } .eiphone-weekbtn-teller {
font-size: .68em;
font-weight: 400;
opacity: .65;
display: block;
line-height: 1.1;
}
.eiphone-weekbtn-teller:empty { display: none; }
.eiphone-weekbtn.actief .eiphone-weekbtn-teller { opacity: .85; } .pagina-404 {
text-align: center;
padding: 4rem 1rem 5rem;
max-width: 520px;
margin: 0 auto;
}
.pagina-404-ei { color: var(--rood); margin-bottom: 1.2rem; }
.pagina-404-titel { font-size: 1.6rem; font-family: 'Playfair Display', Georgia, serif; margin-bottom: .6rem; }
.pagina-404-sub { color: #888; font-size: .95rem; margin-bottom: 2rem; line-height: 1.6; }
.pagina-404-knop {
display: inline-block;
background: var(--rood);
color: #fff;
padding: .6rem 1.6rem;
border-radius: 3px;
font-size: .9rem;
font-weight: 600;
text-decoration: none;
}
.pagina-404-knop:hover { opacity: .88; }
.pagina-404-recente { margin-top: 3rem; text-align: left; }
.pagina-404-recente-label { font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; color: #999; margin-bottom: .6rem; }
.pagina-404-recente ul { list-style: none; padding: 0; }
.pagina-404-recente li { border-bottom: 1px solid #eee; padding: .5rem 0; font-size: .9rem; }
.pagina-404-recente li a { color: inherit; text-decoration: none; }
.pagina-404-recente li a:hover { color: var(--rood); }
html.nachtmodus .pagina-404-recente li { border-color: #222; } .zoek-formulier { margin: 1.5rem 0 1rem; }
.zoek-veld-wrap {
display: flex;
max-width: 560px;
border: 2px solid #ddd;
border-radius: 4px;
overflow: hidden;
}
.zoek-veld {
flex: 1;
border: none;
padding: .65rem 1rem;
font-size: 1rem;
outline: none;
background: transparent;
}
.zoek-knop {
background: var(--rood);
border: none;
color: #fff;
padding: 0 1.1rem;
cursor: pointer;
display: flex;
align-items: center;
}
.zoek-knop:hover { opacity: .88; }
.zoek-aantal { font-size: .82rem; color: #888; margin-bottom: 1.2rem; }
.zoek-geen-resultaten { color: #888; font-size: .95rem; padding: 2rem 0; }
html.nachtmodus .zoek-veld-wrap { border-color: #333; background: #111; }
html.nachtmodus .zoek-veld { color: #eee; }
.screen-reader-text {
position: absolute;
width: 1px; height: 1px;
padding: 0; margin: -1px;
overflow: hidden;
clip: rect(0,0,0,0);
white-space: nowrap;
border: 0;
} .paginering { margin: 2.5rem 0; }
.paginering .nav-links {
display: flex;
justify-content: center;
align-items: center;
gap: .35rem;
flex-wrap: wrap;
}
.paginering .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 2.2rem;
height: 2.2rem;
padding: 0 .7rem;
border: 1px solid #ddd;
border-radius: 4px;
font-size: .85rem;
font-weight: 600;
color: inherit;
text-decoration: none;
transition: border-color .15s, color .15s, background .15s;
}
.paginering .page-numbers.dots {
border-color: transparent;
font-weight: 400;
}
.paginering .page-numbers.current {
background: var(--rood);
color: #fff;
border-color: var(--rood);
}
.paginering .page-numbers:hover:not(.current):not(.dots) {
border-color: var(--rood);
color: var(--rood);
}
html.nachtmodus .paginering .page-numbers { border-color: #333; color: #ccc; }
html.nachtmodus .paginering .page-numbers.dots { border-color: transparent; }
html.nachtmodus .paginering .page-numbers:hover:not(.current):not(.dots) { border-color: var(--rood); color: var(--rood); } :root {
--serif:  'Playfair Display', 'Georgia', 'Times New Roman', serif;
--sans:   'DM Sans', 'Helvetica Neue', Arial, sans-serif;
--bg:     #f9f7f5;
--border: #e6e2dd;
}
body {
background: var(--bg);
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}  .categorie-badge,
.populair-badge {
border-radius: 3px 8px 4px 9px / 7px 4px 8px 3px;
box-shadow: inset 0 0 0 1px rgba(255,255,255,.4);
}
.categorie-badge { transform: rotate(-1.4deg); }
.populair-badge  { transform: rotate(1.1deg); } .sectie-label h2 {
position: relative;
padding-left: 0.7rem;
}
.sectie-label h2::before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: var(--rood);
border-radius: 1px;
}
.sectie-label::after {
background: var(--border);
} .hero-artikel {
border-color: var(--border);
}
.lees-meer {
border-radius: 2px;
transition: background 0.18s ease, transform 0.16s ease;
}
.lees-meer:hover {
transform: translateX(3px);
color: var(--wit);
} .artikel-kaart {
border-color: var(--border);
background: var(--wit);
transition: box-shadow 0.22s ease, transform 0.22s ease;
}
.artikel-kaart:hover {
box-shadow: 0 8px 30px rgba(0,0,0,.09);
transform: translateY(-2px);
} .artikel-lijst {
background: var(--border);
border-color: var(--border);
}
.lijst-item {
background: var(--wit);
}  .single-content,
.vw-tekst {
font-family: 'Source Serif 4', Georgia, serif;
font-size: 1.1rem;
line-height: 1.82;
color: #1c1c1c;
hyphens: auto;
-webkit-hyphens: auto;
}
.single-content > p:first-of-type:not(.artikel-byline),
.vw-tekst > p:first-of-type:not(.artikel-byline) {
font-size: 1.1rem;
color: #2a2a2a;
} .single-content > p:first-of-type:not(.artikel-byline) strong,
.single-content > p:first-of-type:not(.artikel-byline) b,
.vw-tekst > p:first-of-type:not(.artikel-byline) strong,
.vw-tekst > p:first-of-type:not(.artikel-byline) b {
font-weight: normal;
}
.single-content .artikel-byline,
.vw-tekst .artikel-byline {
font-family: var(--sans);
font-size: 0.88rem;
font-style: italic;
color: var(--midgrijs);
margin-top: 0 !important;
margin-bottom: 1.2rem !important;
}
.single-content blockquote,
.vw-tekst blockquote {
border-left: 3px solid var(--rood);
padding: 0.8rem 1.5rem;
background: transparent;
font-size: 1.12rem;
line-height: 1.7;
color: #444;
font-style: italic;
font-family: 'Source Serif 4', Georgia, serif;
}
.single-content a,
.vw-tekst a {
color: var(--rood);
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 2px;
}
.single-content a:hover,
.vw-tekst a:hover {
color: #990000;
} .site-nav a {
font-family: var(--sans);
font-size: 0.76rem;
letter-spacing: 0.06em;
} .header-datum {
font-family: var(--sans);
font-size: 0.69rem;
letter-spacing: 0.08em;
color: #aaa;
text-transform: uppercase;
} .site-footer {
border-top: 3px solid var(--rood);
margin-top: calc(4rem - 30px);
}
.footer-logo {
font-family: var(--serif);
letter-spacing: -0.02em;
}
.footer-sub {
letter-spacing: 0.02em;
} :focus-visible {
outline: 2px solid var(--rood);
outline-offset: 3px;
} @media (prefers-reduced-motion: no-preference) {
@keyframes bs-fade-up {
from { opacity: 0; transform: translateY(10px); }
to   { opacity: 1; transform: translateY(0); }
}
.hero-artikel {
animation: bs-fade-up 0.5s ease both;
}
.hero-onder-grid .artikel-kaart:nth-child(1) { animation: bs-fade-up 0.4s 0.05s ease both; }
.hero-onder-grid .artikel-kaart:nth-child(2) { animation: bs-fade-up 0.4s 0.10s ease both; }
.hero-onder-grid .artikel-kaart:nth-child(3) { animation: bs-fade-up 0.4s 0.05s ease both; }
.hero-onder-grid .artikel-kaart:nth-child(4) { animation: bs-fade-up 0.4s 0.10s ease both; }
.hero-onder-grid .artikel-kaart:nth-child(5) { animation: bs-fade-up 0.4s 0.15s ease both; }
.hero-onder-grid .artikel-kaart:nth-child(6) { animation: bs-fade-up 0.4s 0.20s ease both; }
} html.nachtmodus .artikel-kaart {
background: #1e1c1a;
border-color: #2e2b27;
}
html.nachtmodus .artikel-kaart:hover {
box-shadow: 0 8px 30px rgba(0,0,0,.4);
}
html.nachtmodus .hero-artikel {
background: #1e1c1a;
border-color: #2e2b27;
}
html.nachtmodus .lijst-item {
background: #1e1c1a;
}
html.nachtmodus .lijst-item:hover {
background: #242220;
}
html.nachtmodus .artikel-lijst {
background: #2e2b27;
border-color: #2e2b27;
}
html.nachtmodus .sectie-label::after {
background: #2e2b27;
}
html.nachtmodus .single-content,
html.nachtmodus .vw-tekst {
color: #c5c0b8;
}
html.nachtmodus .single-content > p:first-of-type:not(.artikel-byline),
html.nachtmodus .vw-tekst > p:first-of-type:not(.artikel-byline) {
color: #c5c0b8;
}
html.nachtmodus .single-content .artikel-byline,
html.nachtmodus .vw-tekst .artikel-byline {
color: #666;
}
html.nachtmodus .single-content blockquote,
html.nachtmodus .vw-tekst blockquote {
color: #a09890;
background: #222;
border-left-color: var(--rood);
}
html.nachtmodus .single-content a,
html.nachtmodus .vw-tekst a {
color: #e06060;
}
html.nachtmodus .single-content a:hover,
html.nachtmodus .vw-tekst a:hover {
color: #f08080;
}
html.nachtmodus .reactie-item {
background: #1e1c1a;
border-color: #2e2b27;
} .single-content .tussenkop,
.vw-tekst .tussenkop {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1.3rem;
font-weight: 700;
line-height: 1.1;
color: var(--zwart);
margin: 2.4rem 0 0.75rem; clear: both;
}
html.nachtmodus .single-content .tussenkop,
html.nachtmodus .vw-tekst .tussenkop {
color: #d8d3cc;
}
@media (max-width: 600px) {
.single-content .tussenkop,
.vw-tekst .tussenkop {
font-size: 1.1rem;
}
} html.nachtmodus .adv-formulier h3 { color: #d0cbc2; }
html.nachtmodus .adv-veld label   { color: #c8c3bb; }
html.nachtmodus .adv-veld small   { color: #888; }
html.nachtmodus .adv-veld input[type="text"],
html.nachtmodus .adv-veld input[type="email"],
html.nachtmodus .adv-veld input[type="url"],
html.nachtmodus .adv-veld select,
html.nachtmodus .adv-veld textarea {
background: #242220;
border-color: #3a3632;
color: #d0cbc2;
}
html.nachtmodus .adv-veld input:focus,
html.nachtmodus .adv-veld select:focus,
html.nachtmodus .adv-veld textarea:focus {
background: #2a2724;
border-color: var(--rood);
}
html.nachtmodus .adv-veld input[type="file"] { color: #aaa; }
html.nachtmodus .adv-formaat-optie {
border-color: #3a3632;
background: #1e1c1a;
color: #c8c3bb;
}
html.nachtmodus .adv-formaat-optie:hover     { border-color: #666; }
html.nachtmodus .adv-formaat-optie:has(input:checked) {
border-color: var(--rood);
background: #2a1a1a;
}
html.nachtmodus .adv-formaat-inhoud small    { color: #888; }
html.nachtmodus .adv-formaat-inhoud strong   { color: #d0cbc2; }
html.nachtmodus .adv-klein {
color: #888;
border-left-color: #3a3632;
}
html.nachtmodus .adv-fout   { color: #f08080; }
html.nachtmodus .adv-succes { color: #7ec87e; } .nacht-toggle-desk {
display: flex;
position: static;
transform: none;
align-items: center;
justify-content: center;
background: none;
border: none;
cursor: pointer;
color: #fff;
padding: 2px;
padding-right: 0.75rem;
margin-right: 0.25rem;
border-right: 1px solid #2a2a2a;
line-height: 0;
transition: color 0.15s;
}
.nacht-toggle-desk .dag-kip   { display: block; }
.nacht-toggle-desk .nacht-kip { display: none; }
html.nachtmodus .nacht-toggle-desk .dag-kip   { display: none; }
html.nachtmodus .nacht-toggle-desk .nacht-kip { display: block; }
html.nachtmodus .nacht-toggle-desk { color: #666; }
@media (max-width: 600px) {
.nacht-toggle-desk { display: none !important; }
} .voorlezen-btn:focus-visible,
.eiphone-play:focus-visible,
.nacht-toggle:focus-visible,
.nacht-toggle-desk:focus-visible,
.hamburger:focus-visible { outline: none; } .vl-golf-wrap {
display: flex;
align-items: center;
gap: 2px;
height: 28px;
width: 100%;
max-height: 0;
overflow: hidden;
opacity: 0;
transition: max-height 0.3s ease, opacity 0.3s ease;
}
.voorlezen-player.speelt .vl-golf-wrap {
max-height: 28px;
opacity: 1;
}
.vl-golf-staaf {
flex: 1;
min-width: 0;
border-radius: 2px;
background: var(--rood);
transform-origin: center;
opacity: 0.7;
}
.voorlezen-player.speelt .vl-golf-staaf {
animation: ep-golf-adem 2s ease-in-out infinite;
animation-delay: calc(var(--ei, 0) * -0.08s);
} .voorlezen-btn,
.voorlezen-balk,
.eiphone-play,
.eiphone-skip,
.eiphone-weekbtn,
.nacht-toggle,
.nacht-toggle-desk,
.hamburger,
.site-nav a,
.footer-sociaal-mobiel a,
.header-sociaal-link,
.buzz-knop,
.lees-meer,
.deel-knop { touch-action: manipulation; } .vl-golf-wrap,
.vl-golf-staaf { pointer-events: none; } .geloof-wrap {
margin: 2.5rem 0 1.5rem;
padding: 1.2rem 1.4rem 1.1rem;
background: var(--grijs);
border-top: 2px solid var(--rood);
font-family: var(--serif);
}
.geloof-clear { clear: both; }
.geloof-wrap.geloof-inline {
float: right;
width: 40%;
margin: 0 0 0.6rem 1.4rem;
padding: 0.9rem 1rem 0.85rem; clear: right;
}
.geloof-wrap.geloof-inline .geloof-labels { display: none; }
.geloof-wrap.geloof-mob { display: none; }
@media (max-width: 600px) {
.geloof-wrap.geloof-inline { display: none; }
.geloof-wrap.geloof-mob    { display: block; }
}
.geloof-vraag {
font-size: 0.88rem;
font-weight: bold;
color: var(--zwart);
margin: 0 0 0.85rem;
letter-spacing: 0.01em;
}
.geloof-labels {
display: flex;
justify-content: space-between;
font-size: 0.7rem;
color: var(--midgrijs);
font-style: italic;
margin-bottom: 0.45rem;
line-height: 1.2;
user-select: none;
}
.geloof-slider {
width: 100%;
-webkit-appearance: none;
appearance: none;
height: 5px;
border-radius: 3px;
outline: none;
cursor: pointer;
display: block;
background: linear-gradient(
to right,
#555 0%,
var(--rood) var(--geloof-pct, 50%),
#ccc var(--geloof-pct, 50%),
#ccc 100%
);
}
.geloof-slider::-webkit-slider-thumb {
-webkit-appearance: none;
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--rood);
border: 2.5px solid #fff;
box-shadow: 0 1px 5px rgba(0,0,0,.25);
cursor: pointer;
}
.geloof-slider::-moz-range-thumb {
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--rood);
border: 2.5px solid #fff;
box-shadow: 0 1px 5px rgba(0,0,0,.25);
cursor: pointer;
}
.geloof-slider-outer {
position: relative;
padding-top: 1.9rem;
}
.geloof-tooltip {
position: absolute;
top: 0;
transform: translateX(-50%);
background: var(--rood);
color: #fff;
font-size: .72rem;
font-weight: 700;
font-family: var(--sans);
padding: 3px 8px;
border-radius: 3px;
white-space: nowrap;
pointer-events: none;
line-height: 1.4;
transition: left .08s ease;
}
.geloof-tooltip::after {
content: '';
position: absolute;
top: 100%;
left: 50%;
transform: translateX(-50%);
border: 4px solid transparent;
border-top-color: var(--rood);
}
html.nachtmodus .geloof-tooltip        { background: #dd2222; }
html.nachtmodus .geloof-tooltip::after { border-top-color: #dd2222; }
.geloof-btn {
display: inline-block;
margin-top: 0.9rem;
background: var(--rood);
color: #fff;
border: none;
padding: 0.42rem 1.3rem;
font-size: 0.8rem;
font-family: var(--serif);
font-weight: bold;
cursor: pointer;
border-radius: 2px;
letter-spacing: 0.03em;
touch-action: manipulation;
}
.geloof-btn:hover    { background: #a80001; }
.geloof-btn:disabled { opacity: 0.6; cursor: default; }
.geloof-balk-wrap {
position: relative;
height: 5px;
background: #ddd;
border-radius: 3px;
overflow: hidden;
margin: 0.5rem 0 0.55rem;
}
.geloof-balk-vul {
height: 100%;
background: var(--rood);
border-radius: 3px;
width: 0;
transition: width 0.7s cubic-bezier(.4,0,.2,1);
}
.geloof-res-tekst {
font-size: 0.82rem;
color: var(--midgrijs);
margin: 0;
}
.geloof-res-tekst strong {
color: var(--zwart);
font-weight: bold;
font-style: normal;
}
html.nachtmodus .geloof-wrap               { background: #1a1a1a; }
html.nachtmodus .geloof-vraag              { color: #e0e0e0; }
html.nachtmodus .geloof-labels             { color: #555; }
html.nachtmodus .geloof-balk-wrap          { background: #333; }
html.nachtmodus .geloof-res-tekst          { color: #777; }
html.nachtmodus .geloof-res-tekst strong   { color: #e0e0e0; } .geloof-top { margin: 2rem 0; font-family: var(--serif); }
.geloof-top-kop {
font-size: 0.78rem;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--rood);
font-weight: bold;
margin: 0 0 1rem;
padding-bottom: 0.5rem;
border-bottom: 1px solid #ddd;
}
.geloof-top-lijst { list-style: none; margin: 0; padding: 0; }
.geloof-top-item  { padding: 0.75rem 0; border-bottom: 1px solid #eee; }
.geloof-top-rij {
display: flex;
align-items: baseline;
gap: 0.55rem;
margin-bottom: 0.3rem;
}
.geloof-top-nr {
color: var(--rood);
font-size: 0.72rem;
font-weight: bold;
min-width: 1.4rem;
flex-shrink: 0;
}
.geloof-top-link {
flex: 1;
font-size: 0.9rem;
color: var(--zwart);
font-weight: bold;
line-height: 1.3;
}
.geloof-top-link:hover { color: var(--rood); text-decoration: none; }
.geloof-top-meta {
display: flex;
align-items: center;
gap: 0.7rem;
padding-left: 1.95rem;
}
.geloof-top-balk-wrap {
flex: 1;
height: 3px;
background: #e0e0e0;
border-radius: 2px;
overflow: hidden;
}
.geloof-top-balk-vul {
height: 100%;
background: var(--rood);
border-radius: 2px;
}
.geloof-top-label {
font-size: 0.72rem;
color: var(--zwart);
font-style: italic;
white-space: nowrap;
flex-shrink: 0;
}
.geloof-top-stemmen {
font-size: 0.68rem;
color: var(--midgrijs);
white-space: nowrap;
flex-shrink: 0;
}
.geloof-top-leeg { color: var(--midgrijs); font-style: italic; font-size: 0.88rem; }
html.nachtmodus .geloof-top-kop      { border-color: #333; }
html.nachtmodus .geloof-top-item     { border-color: #2a2a2a; }
html.nachtmodus .geloof-top-link     { color: #e0e0e0; }
html.nachtmodus .geloof-top-label    { color: #bbb; }
html.nachtmodus .geloof-top-balk-wrap { background: #333; } .waardering-wrap {
margin: 1.6rem 0 2.5rem;
text-align: center;
}
.waardering-btn {
display: inline-flex;
align-items: center;
gap: 0.55rem;
background: var(--grijs);
border: 2px solid var(--rood);
color: var(--zwart);
font-family: var(--sans);
font-size: 0.92rem;
font-weight: 700;
padding: 0.7rem 1.5rem;
border-radius: 30px;
cursor: pointer;
transition: background 0.15s, transform 0.1s;
}
.waardering-btn:hover:not(:disabled) { background: #e8e8e8; transform: translateY(-1px); }
.waardering-btn:disabled { cursor: default; }
.waardering-icoon { font-size: 1.1rem; }
.waardering-btn--gedaan {
border-color: var(--midgrijs);
color: var(--midgrijs);
background: transparent;
transform: none;
}
html.nachtmodus .waardering-btn { background: #1a1a1a; color: #e0e0e0; }
html.nachtmodus .waardering-btn:hover:not(:disabled) { background: #242424; }
html.nachtmodus .waardering-btn--gedaan { background: transparent; } .bnsp-ip-wrap {
position: relative;
display: inline-flex;
}
.bnsp-ip-btn {
background: none;
border: none;
padding: 0;
cursor: pointer;
}
.bnsp-ip-popup {
position: absolute;
top: calc(100% + 10px);
left: 50%;
transform: translateX(-50%);
width: 280px;
background: #fff;
border: 1px solid #e0e0e0;
border-radius: 8px;
box-shadow: 0 4px 20px rgba(0,0,0,.12);
padding: 14px 16px;
z-index: 9999;
text-align: left;
}
.bnsp-ip-wrap--omhoog .bnsp-ip-popup {
top: auto;
bottom: calc(100% + 10px);
}
.bnsp-ip-popup::before {
content: '';
position: absolute;
top: -6px;
left: 50%;
transform: translateX(-50%) rotate(45deg);
width: 10px;
height: 10px;
background: #fff;
border-left: 1px solid #e0e0e0;
border-top: 1px solid #e0e0e0;
}
.bnsp-ip-wrap--omhoog .bnsp-ip-popup::before {
top: auto;
bottom: -6px;
border: none;
border-right: 1px solid #e0e0e0;
border-bottom: 1px solid #e0e0e0;
}
.bnsp-ip-titel {
font-family: 'Playfair Display', Georgia, serif;
font-weight: 700;
font-size: .95rem;
color: #111;
margin: 0 0 6px;
}
.bnsp-ip-uitleg {
font-size: .78rem;
color: #555;
margin: 0 0 10px;
line-height: 1.4;
}
.bnsp-ip-uitleg strong { color: #111; }
.bnsp-ip-rij {
display: flex;
gap: 6px;
}
.bnsp-ip-url {
flex: 1;
font-size: .72rem;
padding: 5px 8px;
border: 1px solid #ddd;
border-radius: 4px;
color: #333;
background: #f9f9f9;
min-width: 0;
}
.bnsp-ip-kopieer {
font-size: .75rem;
padding: 5px 10px;
background: var(--rood, #cc0000);
color: #fff;
border: none;
border-radius: 4px;
cursor: pointer;
white-space: nowrap;
transition: background .15s;
}
.bnsp-ip-kopieer:hover { background: #a80000; }
html.nachtmodus .bnsp-ip-popup {
background: #1e1e1e;
border-color: #333;
box-shadow: 0 4px 20px rgba(0,0,0,.4);
}
html.nachtmodus .bnsp-ip-popup::before { background: #1e1e1e; border-color: #333; }
html.nachtmodus .bnsp-ip-titel { color: #eee; }
html.nachtmodus .bnsp-ip-uitleg { color: #aaa; }
html.nachtmodus .bnsp-ip-uitleg strong { color: #eee; }
html.nachtmodus .bnsp-ip-url { background: #2a2a2a; border-color: #444; color: #ccc; } body.single { overflow-x: hidden; } #bnsp-swipe-content { will-change: transform; position: relative; z-index: 1; } body.single .site-header,
body.single .site-nav { position: relative; z-index: 2; } .artikel-swipe-preview {
display: none;
position: fixed;
inset: 0;
z-index: 0; background: var(--bg);
overflow: hidden;
} .artikel-swipe-preview-scroll { height: 100%; overflow-y: auto; -webkit-overflow-scrolling: touch; } .artikel-swipe-preview-afb { aspect-ratio: 3 / 2; background: #eee; } html.nachtmodus .artikel-swipe-preview { background: #181818; } .artikel-swipe-hint {
display: none;
text-align: center;
font-size: 0.8rem;
color: var(--midgrijs, #888);
margin: 0.5rem 0 1.5rem;
letter-spacing: 0.02em;
}
@media (max-width: 600px) {
.artikel-swipe-hint { display: block; }
}
html.nachtmodus .artikel-swipe-hint { color: #888; }