/* GEGENEREERD door gen_typografie_css.ps1: niet met de hand aanpassen (wordt overschreven).
   Leesvriendelijke typografie voor de hele site: Poppins voor lopende tekst en labels, minimale
   lettergroottes, geen dunne gewichten. Koppen (Rajdhani) en de opmaak blijven zoals ze zijn. */
:root { --font-body: 'Poppins'; }
body { font-family: var(--font-body), sans-serif !important; font-size: 15px; line-height: 1.6; }
input, select, textarea, button { font-family: inherit; }
body { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; }
.nav-links a { font-weight: 500 !important; font-size: max(13px, 0.85rem) !important; }
.nav-cta { font-weight: 500 !important; font-size: max(13px, 0.85rem) !important; }
.section-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.hw-badge { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.7rem) !important; }
.page-hero p { font-weight: 400 !important; font-size: max(15px, 1.1rem) !important; }
.hw-stat-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.block-text { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.highlight-card h4 { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.gallery-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.specs-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.specs-group h5 { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.spec-key { font-weight: 400 !important; font-size: max(15px, 0.85rem) !important; }
.port-card .port-name { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.port-card .port-detail { font-size: max(12px, 0.85rem) !important; }
.scale-block p { font-weight: 400 !important; font-size: max(15px, 1rem) !important; }
.scale-stat-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.pricing-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.price-card-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.price-sub { font-size: max(12px, 0.85rem) !important; }
.price-includes li::before { font-size: max(12px, 0.7rem) !important; }
.cta-section p { font-weight: 400 !important; font-size: max(15px, 1.1rem) !important; }
.btn-primary { font-weight: 600 !important; font-size: max(13px, 0.9rem) !important; }
.btn-ghost { font-weight: 500 !important; font-size: max(13px, 0.9rem) !important; }
.footer-left p { font-weight: 400 !important; letter-spacing: 0.02em !important; font-size: max(15px, 0.85rem) !important; }
.footer-links a { font-size: max(12px, 0.8rem) !important; }
body { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 1.05rem) !important; }
.nav-links a { font-size: max(12px, 0.8rem) !important; }
.bedrijfsinfo span { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.8rem) !important; }
.hero-eyebrow { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.7rem) !important; }
h1 .line-dim { font-weight: 400 !important; }
.hero-sub { font-weight: 400 !important; letter-spacing: 0.02em !important; font-size: max(15px, 1.15rem) !important; }
.ai-node-name { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.55rem) !important; }
.strip-item { font-weight: 500 !important; font-size: max(13px, 0.8rem) !important; }
.diensten-header p { font-weight: 400 !important; font-size: max(15px, 1.1rem) !important; }
.dienst-card p { font-weight: 400 !important; font-size: max(15px, 1rem) !important; }
.dienst-num { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 2.5rem) !important; }
.ai-collectie-header p { font-weight: 400 !important; font-size: max(15px, 1.1rem) !important; }
.ai-card .ai-tagline { font-weight: 400 !important; letter-spacing: 0.02em !important; font-size: max(13px, 0.8rem) !important; }
.ai-card p { font-weight: 400 !important; font-size: max(15px, 0.95rem) !important; }
.usp-label { font-size: max(12px, 0.85rem) !important; }
.hardware-content p { font-weight: 400 !important; font-size: max(15px, 1.1rem) !important; }
.hw-list li::before { font-size: max(12px, 0.8rem) !important; }
.hw-block p { font-size: max(12px, 0.85rem) !important; }
.cta-section p { font-weight: 400 !important; font-size: max(15px, 1.15rem) !important; }
.dienst-meer { font-weight: 500 !important; font-size: max(13px, 0.8rem) !important; }
.sector-anchor-nav a { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.sector-blok-badge { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.sector-blok-content p { font-weight: 400 !important; font-size: max(15px, 1rem) !important; }
.sector-meer { font-weight: 500 !important; font-size: max(13px, 0.85rem) !important; }
.pricing-home-intro p { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.ph-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.ph-period { font-weight: 500 !important; font-size: max(13px, 0.85rem) !important; }
.ph-includes li::before { font-size: max(12px, 0.7rem) !important; }
.pricing-maatwerk-note p { font-weight: 400 !important; font-size: max(15px, 1rem) !important; }
.merken-rij-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.58rem) !important; }
.merken-grid span { font-weight: 500 !important; font-size: max(13px, 0.75rem) !important; }
.pricing-sub { font-weight: 400 !important; font-size: max(15px, 1rem) !important; }
.mog-card p { font-weight: 400 !important; font-size: max(15px, 0.95rem) !important; }
.proces-num { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 1.5rem) !important; }
.proces-step p { font-weight: 400 !important; font-size: max(15px, 0.95rem) !important; }
.related-card p { font-size: max(12px, 0.85rem) !important; }
.brands-count { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.brand-card:not([href])::before { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.45rem) !important; }
.brand-category { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.news-header p { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.archive-badge { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.news-card-date { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.news-card-intro { font-weight: 400 !important; font-size: max(15px, 0.9rem) !important; }
.news-card-cta { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.58rem) !important; }
.pagination a, .pagination span { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.58rem) !important; }
.article-back { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.58rem) !important; }
.article-date { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.58rem) !important; }
.article-intro-text { font-weight: 400 !important; font-size: max(15px, 1.1rem) !important; }
.article-content p { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.page-header-sub { font-weight: 400 !important; letter-spacing: 0.02em !important; font-size: max(15px, 1.1rem) !important; }
.prod-search input { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 1rem) !important; }
.prod-search-btn { font-weight: 600 !important; font-size: max(13px, 0.85rem) !important; }
.prod-filters label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.prod-filters select { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 0.9rem) !important; }
.prod-filter-clear { font-size: max(12px, 0.6rem) !important; }
.prod-reset-all { font-weight: 600 !important; font-size: max(13px, 0.8rem) !important; }
.prod-status { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.65rem) !important; }
.prod-state-icon { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 2rem) !important; }
.prod-state p { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.7rem) !important; }
.prod-meta-row { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.6rem) !important; }
.prod-price-excl-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.55rem) !important; }
.prod-price-incl { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.65rem) !important; }
.prod-price-none { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.7rem) !important; }
.prod-stock { font-size: max(12px, 0.78rem) !important; }
.prod-qty-input { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.9rem) !important; }
.prod-card-btn { font-weight: 600 !important; font-size: max(13px, 0.82rem) !important; }
.prod-card-btn-secondary { font-size: max(12px, 0.7rem) !important; }
.prod-pagination button { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 0.9rem) !important; }
.ai-badge { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.7rem) !important; }
.sector-block p { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.oplossing-box p { font-weight: 400 !important; font-size: max(15px, 1rem) !important; }
.comp-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.comp-card h4 { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.65rem) !important; }
.price-period { font-weight: 500 !important; font-size: max(13px, 0.85rem) !important; }
.related-card p { font-weight: 400 !important; font-size: max(15px, 0.9rem) !important; }
.cat-breadcrumb { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.aigeni-item { font-weight: 500 !important; font-size: max(13px, 0.8rem) !important; }
.aigeni-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.cat-card-img-placeholder { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.cat-card-badge { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.5rem) !important; }
.cat-card-sub { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.cat-card-desc { font-weight: 400 !important; font-size: max(15px, 0.9rem) !important; }
.cat-card-link { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.cat-empty { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.75rem) !important; }
.cat-brands-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.cat-brand-chip { font-weight: 500 !important; font-size: max(13px, 0.9rem) !important; }
.dienst-num { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.dienst-kaart p { font-weight: 400 !important; font-size: max(15px, 0.95rem) !important; }
.dienst-note p { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.cat-qty-input { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.9rem) !important; }
.cat-card-price-none { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.65rem) !important; }
.cat-card-stock { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.55rem) !important; }
.glyph-label { font-weight: 500 !important; font-size: max(13px, 0.8rem) !important; }
.pricing-altos-note > div { font-weight: 400 !important; font-size: max(15px, 0.9rem) !important; }
.back-crumb { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.58rem) !important; }
.merk-prod-prijs { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 1.6rem) !important; }
.merk-prod-prijs span { font-size: max(12px, 0.75rem) !important; }
.merk-prod-omschrijving { font-weight: 400 !important; font-size: max(15px, 0.9rem) !important; }
.merk-prod-meta span { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.6rem) !important; }
.mv-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.mv-block p { font-weight: 400 !important; font-size: max(15px, 1.05rem) !important; }
.kernwaarden-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.kernwaarde-num { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.kernwaarde-kaart p { font-weight: 400 !important; font-size: max(15px, 0.95rem) !important; }
.overzicht-intro { font-weight: 400 !important; font-size: max(15px, 0.92rem) !important; }
.overzicht-count { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.overzicht-arrow { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.6rem) !important; }
.database-link-block p { font-weight: 400 !important; font-size: max(15px, 0.9rem) !important; }
.database-link-block a { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.wl-item-meta { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.65rem) !important; }
.wl-qty-input { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.9rem) !important; }
.wl-item-price-unit { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.6rem) !important; }
.wl-total-label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.6rem) !important; }
.wl-item-remove { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.65rem) !important; }
.wl-empty { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.8rem) !important; }
.wl-field label { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; letter-spacing: 0.14em !important; font-size: max(12px, 0.55rem) !important; }
.wl-field input { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 0.95rem) !important; }
.wl-submit { font-weight: 600 !important; }
.nav-dropdown li a { font-weight: 500 !important; font-size: max(13px, 0.82rem) !important; }
.nav-links li.has-dropdown > a .dd-arrow { font-size: max(12px, 0.85rem) !important; }
#hs-input { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 1.05rem) !important; }
.hs-meta { font-size: max(12px, 0.78rem) !important; }
.hs-tag { font-size: max(12px, 0.68rem) !important; }
.hs-price small { font-family: var(--font-body), sans-serif !important; font-weight: 400 !important; letter-spacing: 0.005em !important; font-size: max(15px, 0.72rem) !important; }
.hs-add { font-weight: 600 !important; font-size: max(13px, 0.8rem) !important; }
#hs-foot a { font-size: max(12px, 0.85rem) !important; }
.nav-wishlist-badge { font-family: var(--font-body), sans-serif !important; font-weight: 500 !important; font-size: max(12px, 0.62rem) !important; }
