:root{
  --epops-heading:Georgia,"Times New Roman",serif;
  --epops-body:"Segoe UI Variable Text","Segoe UI",Arial,sans-serif;
  --epops-soft-shadow:0 10px 28px rgba(31,42,68,.07);
}
body{font-family:var(--epops-body);font-size:18px;line-height:1.68;text-rendering:optimizeLegibility}
h1,h2,h3,h4,.section-title,.hero-title{font-family:var(--epops-heading);letter-spacing:-.025em;text-wrap:balance}
h1{letter-spacing:-.04em}p{hyphens:auto}
nav a,.button,.button-main,.button-light,.game-link,.product-link,.chapter-link,.chapter-toggle,button{font-family:var(--epops-body)}
header{box-shadow:0 1px 0 rgba(31,42,68,.09)}nav a{letter-spacing:.01em}.eyebrow,.section-kicker,.game-label{letter-spacing:.14em}
.intro-box{background:transparent;box-shadow:none;border-radius:0;border-top:1px solid rgba(31,42,68,.16);border-bottom:1px solid rgba(31,42,68,.16);padding:34px 0}
.featured-game,.side-game,.card,.quick-card,.content-card,.steps-box,.form-card,.work-card{border-radius:18px;box-shadow:var(--epops-soft-shadow)}
.hero-game,.hero-card,.visual{border-radius:22px}.maker-box{border-radius:22px}.maker-photo{border-radius:16px}.cta-box{border-radius:20px}
.other-grid{gap:38px}.other-card{background:transparent!important;border-radius:0;box-shadow:none;padding:24px 0 0}.other-card.art{border-top:2px solid var(--brown,#8a6846)}.other-card.image{border-top:2px solid var(--blue,#415069)}.other-card::after{display:none}.other-preview img{border-radius:8px}
.note,.maker-quote{border-radius:8px}.button,.button-main,.button-light,.nav-primary{border-radius:8px}
.product-card h3{line-height:1.25;min-height:2.5em}.bingz-family{white-space:nowrap}
@media(max-width:1120px) and (min-width:701px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.product-card h3{min-height:0}}
@media(max-width:760px){body{font-size:18px}.other-grid{gap:20px}.intro-box{padding:26px 0}}

/* Goed leesbare lopende tekst, ook in de praktische informatie. */
.product-card .meta { font-size:16px; line-height:1.65; }
.quick-card p { font-size:18px; line-height:1.7; }
.quick-card h3 { font-size:22px; line-height:1.35; }
.content-card p, .content-card ul, .content-card li { font-size:18px; line-height:1.7; }
p, li { hyphens:none; }

/* Duidelijke teksthierarchie op de spelpagina's. */
.learning-block p, .learning-block li, .step p, .cta-box p { font-size:18px; line-height:1.7; }
.step h3, .learning-note h3, .highlight-box h3 { font-size:22px; line-height:1.35; }
.learning-label, .review-header .small { font-size:14px; }
nav a, footer { font-size:16px; }

/* Leesbare tekst op alle publieke pagina's. */
.hero-sub, .other-head .section-intro,
.hero-card .caption p, .work-card p, .visual-top p, .demo-row span,
.value-card p, .chapter-copy p, .card p, .card li {
  font-size:18px; line-height:1.7;
}
.work-card .details, .photo-gallery figcaption, .hero-tag,
.form-help, .chapter-links a { font-size:16px; line-height:1.6; }
.work-card .price { font-size:20px; font-weight:800; }
.eyebrow, .section-kicker, .game-label, .visual-label, .family-label,
.escape-label, .card .small, .review-left .small { font-size:14px; line-height:1.5; }
.occasion-card h3 { font-size:22px; line-height:1.35; }
