.cmplz-hidden {
					display: none !important;
				}

				/* Sizes the close icon before the banner stylesheet arrives. The
					same rule is in the generated sheet, and the template carries
					width/height attributes — but templates/cookiebanner.php is
					theme-overridable, so a copied template only gets it here. */
				.cmplz-cookiebanner .cmplz-close svg {
					width: 20px;
					height: 20px;
				}

    .tbg-shops {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-top: 10px;
        width: 100%;
    }
    .tbg-shops__sep {
        height: 1px;
        background: #eee8e0;
    }
    .tbg-shops__label {
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        color: #94a3b8;
    }
    .tbg-shops__chips {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }
    .tbg-shops__chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 10px 6px 6px;
        border-radius: 7px;
        border: 1px solid #eee8e0;
        background: #faf8f4;
        text-decoration: none;
        transition: border-color 0.12s, color 0.12s, background 0.12s;
    }
    .tbg-shops__chip:hover {
        border-color: #10b981;
        background: #ecfdf5;
    }
    .tbg-shops__chip:hover .tbg-shops__chip-name {
        color: #10b981;
    }
    .tbg-shops__chip-logo {
        width: 22px;
        height: 22px;
        object-fit: contain;
        border-radius: 4px;
        border: 1px solid #eee8e0;
        background: #fff;
        flex-shrink: 0;
    }
    .tbg-shops__chip-initials {
        width: 22px;
        height: 22px;
        border-radius: 4px;
        border: 1px solid #eee8e0;
        background: #f5f3ee;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 8px;
        font-weight: 700;
        color: #475569;
        flex-shrink: 0;
    }
    .tbg-shops__chip-name {
        font-size: 12px;
        font-weight: 600;
        color: #475569;
        transition: color 0.12s;
    }
    
.gb-site-header li.menu-bf>a.gb-menu-link{background:#fbbf24!important;color:#111827!important;font-weight:700!important;border-radius:9px;height:42px;padding:0 15px!important;margin-left:6px;transition:background-color .15s}.gb-site-header .gb-menu-container li.menu-bf>a.gb-menu-link{color:#111827!important}.gb-site-header li.menu-bf>a.gb-menu-link::before{display:none!important}.gb-site-header li.menu-bf.menu-deals>a.gb-menu-link{gap:7px}.gb-site-header li.menu-bf.menu-deals>a.gb-menu-link::after{content:""!important;display:block!important;flex:0 0 14px;width:14px;height:14px;background:#111827!important;color:#111827!important;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27black%27 stroke-width=%272.6%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M5 12h14M13 6l6 6-6 6%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27black%27 stroke-width=%272.6%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M5 12h14M13 6l6 6-6 6%27/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .15s}.gb-site-header li.menu-bf.menu-deals>a.gb-menu-link:hover::after{transform:translateX(2px)}.gb-site-header li.menu-bf>a.gb-menu-link:hover,.gb-site-header li.menu-bf>a.gb-menu-link:focus-visible{background:#f59e0b!important}.gb-menu-container--mobile li.menu-bf{padding:5px 20px!important}.gb-menu-container--mobile li.menu-bf>a.gb-menu-link{margin-left:0;width:auto;display:inline-flex!important;align-items:center}.tbg-mbf{display:none;align-items:center;gap:5px;flex-shrink:0;height:34px;padding:0 9px 0 11px;margin-left:auto;border-radius:8px;background:rgb(255 255 255 / .07);color:#fbbf24!important;font-weight:700;font-size:13px;line-height:1;white-space:nowrap;text-decoration:none;order:2}.tbg-mbf:hover,.tbg-mbf:focus-visible{background:rgb(255 255 255 / .13);color:#fcd34d!important}@media (max-width:991px){.tbg-mbf{display:inline-flex}.tbg-mbf~.tbg-mzoek{margin-left:2px}}@media (max-width:339px){.tbg-mbf~.tbg-mzoek{display:none!important}}
.tbg-mzoek{display:none;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50px;background:transparent;color:rgb(255 255 255 / .85);cursor:pointer;transition:background-color .2s ease,color .15s ease}.tbg-mzoek:hover,html[data-theme=dark] .tbg-mzoek:hover{background:rgb(255 255 255 / .1);color:#fff}html[data-theme=dark] .tbg-mzoek{background:transparent;color:rgb(255 255 255 / .85);border:0;box-shadow:none}.tbg-mzoek:focus{outline:none}.tbg-mzoek:focus-visible{outline:2px solid #34d399;outline-offset:2px}@media (max-width:991px){.tbg-mzoek{display:inline-flex;margin-left:auto;order:2}.gb-site-header .gb-menu-toggle{order:3}}@media (max-width:767px){.tbg-sm .tbg-sm__panel,.tbg-sm.is-open .tbg-sm__panel{top:var(--tbg-vvt,0px);left:0;right:0;width:100%;max-width:none;transform:none;border-radius:0 0 16px 16px;border-top:0;padding:12px;box-sizing:border-box;max-height:var(--tbg-vvh,100dvh);overflow:visible}.tbg-sm .tbg-ac{max-height:calc(var(--tbg-vvh,100dvh) - 80px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tbg-sm__input,.tbg-sb__input,.tbg-search-input,.tbg-sm input[type=search]{font-size:16px!important}}
:root{--tbg-kopfont:var(--gp-font--geist)}
/* ------------------------------------------------------------
   TOKENS - alleen aanvulling, overschrijft je bestaande :root niet
   ------------------------------------------------------------ */
:root {
    --tbg-border-strong: #ddd6c8;
    --tbg-content-width: 680px;
    --tbg-scroll-offset: 6rem; /* pas aan op hoogte sticky header */
}
/* NIEUW: kleinere anker-offset op mobiel (sticky header is daar lager).
   Pas de 5rem aan op de werkelijke mobiele headerhoogte. */
@media (max-width: 768px) {
    :root {
        --tbg-scroll-offset: 5rem;
    }
}
/* ------------------------------------------------------------
   FLUENT PLAYER
   ------------------------------------------------------------ */
.fp-media-block {
    max-width: 100%;
    overflow: hidden;
}
.fp-media-block media-player {
    max-width: 100%;
    width: 100%;
}
.tax-brand .site-main > * {
    margin-bottom: 0;
}
/* ------------------------------------------------------------
   FLUENT COMMUNITY LOGIN
   ------------------------------------------------------------ */
.fls_registration_wrapper .fls_registration_form #fls_submit,
.fls_registration_wrapper .fls_registration_form #fls_verification_submit,
.fls_login_wrapper #fls_magic_submit,
.fls_login_wrapper input#wp-submit {
    background: var(--tbg-accent) !important;
    border-radius: 10px !important;
}
/* ============================================================
   ARTICLE CONTENT - tekststyling
   ============================================================ */
.dynamic-entry-content {
    max-width: var(--tbg-content-width);
    color: var(--tbg-text);
    margin-bottom: 3rem;
    overflow-wrap: break-word;
}

.dynamic-entry-content figcaption { font-size: 0.8125rem; color: var(--tbg-muted, #7a7563); margin-top: 0.5rem; }

.dynamic-entry-content 
/* --- Headings --- */
.dynamic-entry-content h2,
.dynamic-entry-content h3,
.dynamic-entry-content h4,
.dynamic-entry-content h5,
.dynamic-entry-content h6 {
    color: var(--tbg-text-dark);
    text-align: left;
    scroll-margin-top: var(--tbg-scroll-offset);
}
.dynamic-entry-content h2 {
    position: relative;
    font-size: 1.75rem;
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.25;
    margin: 3rem 0 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--tbg-border);
}
.dynamic-entry-content h2::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 2.5rem;
    height: 2px;
    background: linear-gradient(90deg, var(--tbg-accent), transparent);
}
.dynamic-entry-content h3 {
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.4;
    margin: 2.5rem 0 0.75rem;
}
.dynamic-entry-content h4 {
    font-size: 1.0625rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 2rem 0 0.5rem;
}
.dynamic-entry-content h5 {
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 1.75rem 0 0.5rem;
}
.dynamic-entry-content h6 {
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.6;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--tbg-accent);
    margin: 1.75rem 0 0.5rem;
}
@media (max-width: 768px) {
    .dynamic-entry-content h2 { font-size: 1.5rem; }
    .dynamic-entry-content h3 { font-size: 1.1875rem; }
}
/* Vergelijkingspagina: eerste h2 geen margin-top */
.gb-element-vgl-content-section .dynamic-entry-content h2:first-child {
    margin-top: 0;
}
/* --- Paragraphs --- */
.dynamic-entry-content p {
    margin-bottom: 1.5rem;
}
.dynamic-entry-content p:last-child {
    margin-bottom: 0;
}
/* --- Strong --- */
.dynamic-entry-content strong {
    color: var(--tbg-text-dark);
    font-weight: 700;
}
/* --- Links ---
 * Style alleen "kale" links zonder class.
 * Alles met een class (tbg-*, gb-*, button-*) heeft eigen styling.
 */
.dynamic-entry-content a:not([class]) {
    color: var(--tbg-accent);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    text-decoration-color: rgba(16, 185, 129, 0.4);
    font-weight: 600;
    transition: color 0.2s ease, text-decoration-color 0.2s ease;
}
.dynamic-entry-content a:not([class]):hover {
    color: var(--tbg-accent-hover);
    text-decoration-color: var(--tbg-accent-hover);
}
.dynamic-entry-content a:not([class]):focus-visible {
    outline: 2px solid var(--tbg-accent);
    outline-offset: 2px;
    border-radius: 2px;
}
/* --- Lists --- */
.dynamic-entry-content > ul,
.dynamic-entry-content > ol,
.dynamic-entry-content > .wp-block-list {
    margin-bottom: 1.75rem;
    padding-left: 1.75rem;
}
.dynamic-entry-content > ul,
.dynamic-entry-content > ul.wp-block-list {
    list-style-type: none;
}
.dynamic-entry-content > ul > li,
.dynamic-entry-content > ul.wp-block-list > li {
    position: relative;
    margin-bottom: 0.75rem;
    padding-left: 0.5rem;
    line-height: 1.7;
}
.dynamic-entry-content > ul > li::before,
.dynamic-entry-content > ul.wp-block-list > li::before {
    content: "\2022";
    color: var(--tbg-accent);
    font-weight: 700;
    font-size: 1.25em;
    position: absolute;
    left: -1.25rem;
}
.dynamic-entry-content > ol,
.dynamic-entry-content > ol.wp-block-list {
    counter-reset: item;
    list-style-type: none;
}
.dynamic-entry-content > ol > li,
.dynamic-entry-content > ol.wp-block-list > li {
    position: relative;
    margin-bottom: 0.75rem;
    padding-left: 0.5rem;
    line-height: 1.7;
    counter-increment: item;
}
.dynamic-entry-content > ol > li::before,
.dynamic-entry-content > ol.wp-block-list > li::before {
    content: counter(item) ".";
    color: var(--tbg-accent);
    font-weight: 700;
    position: absolute;
    left: -1.75rem;
}
/* --- Blockquotes --- */
.dynamic-entry-content blockquote {
    background: none;
    border: none;
    border-left: 2px solid var(--tbg-border-strong);
    border-radius: 0;
    color: var(--tbg-text);
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1.65;
    margin: 2.5rem 0;
    padding: 0 0 0 1.5rem;
    box-shadow: none;
}
.dynamic-entry-content blockquote p {
    margin-bottom: 1rem;
}
.dynamic-entry-content blockquote p:last-child {
    margin-bottom: 0;
}
.dynamic-entry-content blockquote cite {
    display: block;
    margin-top: 0.75rem;
    font-size: 0.875rem;
    font-style: normal;
    color: var(--tbg-text-light);
}
.dynamic-entry-content blockquote cite::before {
    content: "\2014\00a0";
}
/* --- NIEUW: Scheidingslijn --- */
.dynamic-entry-content hr {
    border: none;
    border-top: 1px solid var(--tbg-border);
    margin: 2.5rem 0;
}
/* --- NIEUW: Inline code en codeblokken --- */
.dynamic-entry-content code {
    background: var(--tbg-bg);
    border: 1px solid var(--tbg-border);
    border-radius: 5px;
    padding: 0.125rem 0.375rem;
    font-size: 0.875em;
    color: var(--tbg-text-dark);
}
.dynamic-entry-content pre {
    background: var(--tbg-bg);
    border: 1px solid var(--tbg-border);
    border-radius: var(--tbg-radius);
    padding: 1.25rem 1.5rem;
    overflow-x: auto;
    margin: 2rem 0;
    line-height: 1.6;
}
.dynamic-entry-content pre code {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
}
/* --- Images & Figures --- */
.dynamic-entry-content img {
    border-radius: var(--tbg-radius);
    height: auto;
    max-width: 100%;
    margin-bottom: 0;
}
.dynamic-entry-content figure {
    margin: 2rem 0;
}
.dynamic-entry-content figcaption {
    color: var(--tbg-text-light);
    font-size: 0.875rem;
    font-style: italic;
    margin-top: 0.75rem;
    text-align: center;
    line-height: 1.5;
}
/* ============================================================
   TBG PLUGIN BLOCKS - minimale overrides
   ============================================================ */
/* Card titles: geen article heading spacing */
.dynamic-entry-content .tbg-card__title,
.dynamic-entry-content .tbg-related__title {
    font-size: inherit;
    margin-top: 0;
    margin-bottom: 8px;
    padding-bottom: 0;
    letter-spacing: normal;
    border-bottom: none;
}
/* H2 border-bottom en accent-lijn niet in TBG blokken */
.dynamic-entry-content .tbg-card h2,
.dynamic-entry-content .tbg-rb h2,
.dynamic-entry-content .tbg-vs h2 {
    border-bottom: none;
    padding-bottom: 0;
}
.dynamic-entry-content .tbg-card h2::after,
.dynamic-entry-content .tbg-rb h2::after,
.dynamic-entry-content .tbg-vs h2::after,
.dynamic-entry-content .tbg-card__title::after,
.dynamic-entry-content .tbg-related__title::after {
    display: none;
}
/* Pros/Cons: geen article list bullets */
.dynamic-entry-content .tbg-pros ul,
.dynamic-entry-content .tbg-cons ul,
.dynamic-entry-content .tbg-vs__pc-col ul {
    padding-left: 0;
    margin-bottom: 0;
    list-style-type: none;
}
.dynamic-entry-content .tbg-pros li,
.dynamic-entry-content .tbg-cons li,
.dynamic-entry-content .tbg-vs__pc-col li {
    padding-left: 24px;
    margin-bottom: 0;
}
.dynamic-entry-content .tbg-pros li::before,
.dynamic-entry-content .tbg-cons li::before,
.dynamic-entry-content .tbg-vs__pc-col li::before {
    content: none;
}
/* Pros/Cons headers */
.dynamic-entry-content .tbg-pros h4,
.dynamic-entry-content .tbg-cons h4,
.dynamic-entry-content .tbg-vs__pc-col > h4 {
    font-size: inherit;
    margin-top: 0;
    margin-bottom: 12px;
    letter-spacing: 0.06em;
    border-bottom: none;
}
/* Verdict */
.dynamic-entry-content .tbg-vs__verdict p {
    margin-bottom: 0;
}
.dynamic-entry-content .tbg-vs__verdict strong {
    color: var(--tbg-accent);
}
/* Images in TBG blokken: geen article styling */
.dynamic-entry-content .tbg-card img,
.dynamic-entry-content .tbg-mcta img,
.dynamic-entry-content .tbg-rb img,
.dynamic-entry-content .tbg-vs img,
.dynamic-entry-content .tbg-related img {
    margin-bottom: 0;
    border-radius: 0;
}
/* Block spacing */
.dynamic-entry-content .tbg-card,
.dynamic-entry-content .tbg-related,
.dynamic-entry-content .tbg-vs,
.dynamic-entry-content .tbg-lo,
.dynamic-entry-content .tbg-mcta,
.dynamic-entry-content .tbg-info,
.dynamic-entry-content .tbg-rb {
    margin: 1.5rem 0;
}
/* ============================================================
   BATTERIJ ASIDE (single_thuisbatterij template)
   ============================================================ */
.tb-product-aside img {
    margin: 0 !important;
}
.tb-product-aside .gb-loop-item:last-child {
    border-bottom: none !important;
}
/* ============================================================
   GLOBAL ELEMENTS
   ============================================================ */
/* WordPress images */
.wp-block-image,
.wp-block-image img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
    border-radius: var(--tbg-radius);
}
.wp-block-image {
    margin: 2rem 0;
}
.nozie-169 {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.featured-caption {
    font-size: 0.875rem;
    color: var(--tbg-text-light);
    text-align: right;
    margin-top: 0.5rem;
    margin-right: 0.625rem;
    font-style: italic;
}
/* Tables */
.wp-block-table {
    display: block;
    overflow-x: auto;
    margin-bottom: 2rem;
    border-radius: var(--tbg-radius);
    box-shadow: var(--tbg-shadow-sm);
}
.wp-block-table table {
    width: 100%;
    border-collapse: collapse;
}
.wp-block-table th,
.wp-block-table td {
    border: 1px solid var(--tbg-border);
    padding: 0.875rem 1rem;
    text-align: left;
    vertical-align: top;
}
.wp-block-table thead th {
    background: var(--tbg-bg);
    font-weight: 700;
    color: var(--tbg-text-dark);
    border-bottom: 2px solid var(--tbg-border-strong);
}
.wp-block-table tbody tr:nth-child(even) {
    background: var(--tbg-bg);
}
.wp-block-table tbody tr:hover {
    background: var(--tbg-border-light);
}
/* Video embeds */
.wp-block-embed__wrapper,
.wp-block-video {
    margin-bottom: 2rem;
    border-radius: var(--tbg-radius);
    overflow: hidden;
    box-shadow: var(--tbg-shadow-md);
}
/* E-book heading */
.e-book-h2 {
    font-size: 1.875rem;
    font-weight: 800;
    color: var(--tbg-text-dark);
    margin: 0 0 1.5rem 0;
    letter-spacing: -0.025em;
    line-height: 1.25;
    padding-bottom: 0;
    cursor: default;
}
/* ============================================================
   BUTTONS
   ============================================================ */
.button-cta-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background-color: var(--tbg-accent);
    color: #ffffff;
    padding: 0.875rem 1.75rem;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.9375rem;
    border: none;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.25);
    transition: background-color 0.2s ease;
}
.button-cta-primary:hover,
.button-cta-primary:focus {
    background-color: var(--tbg-accent-hover);
    color: #ffffff;
    text-decoration: none;
}
.button-cta-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background-color: transparent;
    color: var(--tbg-text);
    padding: 0.875rem 1.75rem;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9375rem;
    border: 1px solid var(--tbg-border);
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}
.button-cta-secondary:hover,
.button-cta-secondary:focus {
    background-color: var(--tbg-bg);
    border-color: var(--tbg-border-strong);
    color: var(--tbg-text);
    text-decoration: none;
}
.button-cta-primary:focus-visible,
.button-cta-secondary:focus-visible {
    outline: 2px solid var(--tbg-accent);
    outline-offset: 2px;
}
/* Shiny effect */
.shiny-button {
    position: relative;
    overflow: hidden;
}
.shiny-button::before {
    content: "";
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    border-radius: 12px;
    border: 2px solid transparent;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0));
    background-clip: padding-box;
    mask: linear-gradient(90deg, rgba(0, 0, 0, 1) 1%, rgba(0, 0, 0, 0) 5%);
    -webkit-mask: linear-gradient(90deg, rgba(0, 0, 0, 1) 1%, rgba(0, 0, 0, 0) 5%);
    animation: shine-rect 3s linear infinite;
    pointer-events: none;
}
@keyframes shine-rect {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}
@media (prefers-reduced-motion: reduce) {
    .shiny-button::before {
        animation: none;
    }
}
/* ============================================================
   INFO BLOCKS (legacy bright-idiots)
   ============================================================ */
.bright-idiots-info-block {
    border: 1px solid var(--tbg-border);
    border-radius: 10px;
    margin: 1.5rem 0;
    padding: 1.25rem 1.5rem;
    background: var(--tbg-bg);
    color: var(--tbg-text);
    line-height: 1.7;
}
.bright-idiots-info-block p:last-child {
    margin-bottom: 0;
}
.bright-idiots-info-block-blue {
    background: #fafcff;
    border-color: #bfdbfe;
    color: #1e40af;
}
.bright-idiots-info-block-green {
    background: #ecfdf5;
    border-color: #bbf7d0;
    color: #166534;
}
.bright-idiots-info-block-yellow {
    background: #fffef5;
    border-color: #fde68a;
    color: #854d0e;
}
.bright-idiots-info-block-gray {
    background: var(--tbg-bg);
    border-color: var(--tbg-border);
    color: var(--tbg-text);
}
.bright-idiots-info-block-white {
    background: var(--tbg-bg-white);
    border-color: var(--tbg-border);
    color: var(--tbg-text);
}

/* TBG - vinkje links van de tekst in GenerateBlocks-formulieren
   Plakken in Weergave > Aanpassen > Aanvullende CSS (of in je eigen CSS-bestand).
   Werkt op beide domeinen en op elk GB-formulier met een checkbox.
   Twee losse blokken met opzet: valt de ene selector weg, dan blijft de andere staan. */

/* 1. Als GenerateBlocks de modifier-class meegeeft */
.gb-form-field--checkbox {
	display: flex;
	flex-direction: row-reverse;   /* het vinkje staat in de code na het label, dit zet het ervoor */
	justify-content: flex-end;
	align-items: flex-start;
	column-gap: 0.6em;
}
.gb-form-field--checkbox .gb-form-field__label {
	margin-bottom: 0;
	font-weight: 400;
	font-size: 0.9375em;
	line-height: 1.55;
	color: #5c5849;
}
.gb-form-field--checkbox .gb-form-field__input {
	width: auto;
	flex: 0 0 auto;
	margin: 0.25em 0 0;
	accent-color: #10b981;
}

@media (max-width:767px){
html.tbg-gescrold .tbg-dealkaart-balkvorm--m-kaart:not([style*="none"]){display:block!important;position:fixed!important;left:0!important;right:0!important;top:var(--tbg-hdr-zicht,0px)!important;z-index:98!important}
.tbg-dealkaart-balkvorm.tbg-hb-aan .tbg-dealbalk,.tbg-dealkaart-balkvorm.tbg-hb-aan>.tbg-dealkaart__tag{display:none!important}
.tbg-hb{background:#fff;border-bottom:1px solid #eee8e0;box-shadow:0 8px 20px rgba(15,23,42,.10);padding:9px 12px 10px;font-family:Manrope,system-ui,sans-serif}
.tbg-hb *{box-sizing:border-box}
.tbg-hb__r1{display:flex;gap:10px;align-items:flex-start;padding-right:24px}
.tbg-hb__img{flex:none;width:44px;height:44px;border-radius:9px;background:#faf8f4;object-fit:contain;padding:3px}
.tbg-hb__tx{flex:1;min-width:0;display:block}
.tbg-hb__lab{display:block;font-size:9.5px;font-weight:700;line-height:1.2;letter-spacing:.07em;text-transform:uppercase;color:#94a3b8;margin-bottom:3px}
.tbg-hb__t{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:Geist,Manrope,sans-serif;font-size:14.5px;font-weight:700;line-height:1.25;color:#0f172a}
.tbg-hb__r2{display:flex;align-items:center;gap:8px;margin-top:8px;min-height:38px}
.tbg-hb__eind{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;line-height:1.2;color:#64748b;white-space:nowrap}
.tbg-hb__zin{flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.3;color:#047857}
.tbg-hb .tbg-hcta-code.tbg-hb__code{flex:0 1 auto;min-width:0;padding:5px 8px!important;font-size:12px!important}
.tbg-hb .tbg-hb__knop{flex:none;margin:0 0 0 auto!important;display:inline-flex!important;align-items:center;gap:6px;padding:10px 13px!important;border-radius:10px!important;background:#10b981!important;color:#fff!important;font-size:13.5px!important;font-weight:800!important;line-height:1!important;white-space:nowrap;text-decoration:none!important}
.tbg-dealkaart-balkvorm.tbg-hb-aan .tbg-dealkaart__x{top:6px!important;transform:none!important;right:4px!important}
}
/* Mobiele balk alleen onder 768px: na draaien of breder maken stond hij zonder opmaak op desktop */
@media (min-width:768px){.tbg-hb{display:none!important}}
/* Ingelogd (adminbalk). Onder 601px scrollt de adminbalk mee: header gewoon bovenaan. 601-767px: adminbalk vast, header eronder en bij wegschuiven ook achter de adminbalk langs. Desktop: de vaste header van GenerateBlocks onder de adminbalk. */
@media (max-width:600px){body.admin-bar .gb-site-header{top:0!important}}
@media (max-width:767px){.gb-site-header.tbg-hdr-weg:not(:has(.gb-menu-container--toggled)){transform:translateY(calc(-100% - var(--tbg-ab,0px)))}}
@media (min-width:768px) and (max-width:782px){body.admin-bar .gb-site-header[style*="fixed"]{top:46px!important}}
@media (min-width:783px){body.admin-bar .gb-site-header[style*="fixed"]{top:32px!important}}
@media (max-width:374px){
.tbg-hb .tbg-hb__code .tbg-hcta-code__lab{display:none!important}
.tbg-hb__r2:has(.tbg-hb__code) .tbg-hb__eind{display:none}
}

/* Vraag extra korting aan, per product: strook onder de winkels (batterijkaart en prijsvergelijker) en een pop-up.
   Kleuren volgen de tokens van het ontwerpsysteem (--tbg-ds-*) met dezelfde waarden als terugval. */
.tbg-ka-strook{
  display:flex;align-items:center;gap:12px;box-sizing:border-box;margin:16px 0 4px;padding:12px 14px;
  border:1.5px dashed var(--tbg-ds-lijn-sterk,#cbd5c0);border-radius:12px;background:var(--tbg-ds-tegel,#fafaf6);
  font-family:var(--tbg-ds-font-tekst,"Manrope",system-ui,sans-serif);
}
.tbg-ka-strook__ic{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--tbg-ds-groen-vlak,#e8f3ec);color:var(--tbg-ds-groen-tekst,#047857)}
.tbg-ka-strook__t{flex:1;min-width:0;font-size:14px;line-height:1.4;color:var(--tbg-ds-tekst,#475569)}
.tbg-ka-strook__t b{display:block;font-size:15px;color:var(--tbg-ds-inkt,#1c1917)}
.tbg-ka-strook__knop{
  flex:none;appearance:none;-webkit-appearance:none;margin:0;box-shadow:none;min-height:0;cursor:pointer;white-space:nowrap;
  font:inherit;font-size:14px;font-weight:600;line-height:1.3;padding:8px 12px;border-radius:10px;
  color:var(--tbg-ds-groen-tekst,#047857) !important;background:var(--tbg-ds-kaart,#fff) !important;border:1px solid #b9d6c4;
}
.tbg-ka-strook__knop:hover{border-color:var(--tbg-ds-groen,#10b981)}
.tbg-ka-strook__knop:focus-visible{outline:2px solid var(--tbg-ds-groen,#10b981);outline-offset:2px}
/* Prijsvergelijker: het kortingsblok over de volle breedte, effen rand (de stippelrand is voor de batterijkaart). */
.tbg-pv .tbg-ka-strook{margin:6px 16px 18px;padding:16px;gap:14px;border:1px solid var(--tbg-ds-lijn,#e7e2d6);border-radius:14px;background:var(--tbg-ds-tegel,#faf8f4)}
.tbg-pv .tbg-ka-strook__ic{width:38px;height:38px}
.tbg-pv .tbg-ka-strook__t b{font-size:16px}
.tbg-pv .tbg-ka-strook__knop{font-size:15px;padding:9px 14px;border:1.5px solid var(--tbg-ds-groen,#10b981)}
.tbg-ka-regel{margin:6px 16px 14px;text-align:center;font-size:15px;line-height:1.4;color:var(--tbg-ds-gedempt,#64748b);font-family:var(--tbg-ds-font-tekst,"Manrope",system-ui,sans-serif)}
.tbg-ka-strook__knop.tbg-ka-regel__knop{
  display:inline-flex;align-items:center;gap:6px;width:auto;padding:0;border:0;border-radius:0;font-size:15px;
  background:none !important;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:3px;
}
.tbg-ka-strook__knop.tbg-ka-regel__knop:hover{text-decoration-color:currentColor}
@media (max-width:600px){
  .tbg-ka-strook{flex-wrap:wrap}
  .tbg-ka-strook__knop{width:100%;padding:10px 12px}
}

/* Pop-up */
html.tbg-ka-open{overflow:hidden}
.tbg-ka-pop{
  --ka-inkt:var(--tbg-ds-inkt,#0f172a);
  --ka-tekst:var(--tbg-ds-tekst,#475569);
  --ka-gedempt:var(--tbg-ds-gedempt,#64748b);
  --ka-lijn:var(--tbg-ds-lijn,#eee8e0);
  --ka-lijn-sterk:var(--tbg-ds-lijn-sterk,#ddd6c8);
  --ka-kaart:var(--tbg-ds-kaart,#fff);
  --ka-tegel:var(--tbg-ds-tegel,#faf8f4);
  --ka-groen:var(--tbg-ds-groen,#10b981);
  --ka-groen-tekst:var(--tbg-ds-groen-tekst,#047857);
  --ka-groen-vlak:var(--tbg-ds-groen-vlak,#ecfdf5);
  position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px;
  font-family:var(--tbg-ds-font-tekst,"Manrope",system-ui,sans-serif);
}
.tbg-ka-pop[hidden]{display:none}
.tbg-ka-pop [hidden]{display:none !important}
.tbg-ka-pop__achter{position:absolute;inset:0;background:rgba(15,23,42,.55)}
.tbg-ka-pop__vak{
  position:relative;box-sizing:border-box;width:100%;max-width:420px;max-height:calc(100vh - 32px);overflow:auto;
  padding:24px 24px 20px;background:var(--ka-kaart);border-radius:14px;box-shadow:0 20px 50px rgba(15,23,42,.25);
  color:var(--ka-tekst);font-size:15px;line-height:1.55;
}
.tbg-ka-pop__x{
  position:absolute;top:12px;right:12px;width:32px;height:32px;padding:0;border:0;border-radius:8px;
  background:var(--ka-tegel);color:var(--ka-tekst);font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer;
}
.tbg-ka-pop__titel{margin:0 0 10px;padding:0 36px 0 0;color:var(--ka-inkt);font-family:var(--tbg-ds-font-kop,"Geist",system-ui,sans-serif);font-size:19px;font-weight:700;line-height:1.3;letter-spacing:-.01em}
.tbg-ka-pop__titel:focus{outline:none}
.tbg-ka-pop__shop{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:8px 10px;border:1px solid var(--ka-lijn);border-radius:10px;background:var(--ka-tegel);font-size:14px}
.tbg-ka-pop__shop img{width:28px;height:28px;border-radius:6px;object-fit:contain;background:#fff}
.tbg-ka-pop__shop b{color:var(--ka-inkt)}
.tbg-ka-pop__uitleg{margin:0 0 14px}
.tbg-ka-pop__uitleg b{color:var(--ka-inkt)}
.tbg-ka-pop__lbl{display:block;margin:0 0 6px;color:var(--ka-inkt);font-size:14px;font-weight:600}
.tbg-ka-pop__veld{
  display:block;box-sizing:border-box;width:100%;height:44px;margin:0 0 10px;padding:0 12px;
  border:1px solid var(--ka-lijn-sterk) !important;border-radius:10px !important;background:var(--ka-kaart) !important;box-shadow:none !important;
  font:inherit;font-size:16px;color:var(--ka-inkt);
}
.tbg-ka-pop__veld::placeholder{color:var(--ka-gedempt);opacity:.7}
.tbg-ka-pop__knop{
  display:block;box-sizing:border-box;width:100%;height:44px;border:0;border-radius:10px;
  background:var(--ka-groen);color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer;
}
.tbg-ka-pop__knop:hover{background:color-mix(in srgb,var(--ka-groen),#000 12%)}
.tbg-ka-pop__knop[disabled]{opacity:.6;cursor:default}
.tbg-ka-pop__status{margin:8px 0 0;font-size:13px;line-height:1.4;color:var(--ka-gedempt)}
.tbg-ka-pop__status:empty{display:none}
.tbg-ka-pop__status.is-fout{color:#b91c1c}
.tbg-ka-pop__vink{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;font-size:13.5px;line-height:1.4;color:var(--ka-tekst);cursor:pointer}
.tbg-ka-pop__vink input{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:var(--ka-groen)}
.tbg-ka-pop__klein{margin:10px 0 0;font-size:12.5px;line-height:1.5;color:var(--ka-gedempt)}
.tbg-ka-pop__klein a,.tbg-ka-pop__link{color:var(--ka-groen-tekst);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.tbg-ka-pop__link{appearance:none;background:none;border:0;padding:0;font:inherit;font-weight:600;cursor:pointer}
.tbg-ka-pop__ok{width:44px;height:44px;margin:0 0 12px;border-radius:50%;background:var(--ka-groen-vlak);color:var(--ka-groen);display:grid;place-items:center}
.tbg-ka-pop__terug{
  display:block;box-sizing:border-box;width:100%;height:44px;margin-top:16px;border:1px solid var(--ka-lijn-sterk);border-radius:10px;
  background:var(--ka-kaart);color:var(--ka-inkt);font:inherit;font-size:15px;font-weight:600;cursor:pointer;
}
.tbg-ka__hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.tbg-ka-pop__x:focus-visible,.tbg-ka-pop__veld:focus-visible,.tbg-ka-pop__knop:focus-visible,.tbg-ka-pop__terug:focus-visible,.tbg-ka-pop__link:focus-visible{outline:2px solid var(--ka-groen);outline-offset:2px}

html[data-theme="dark"] .tbg-ka-pop{
  --ka-inkt:#f1f2f3;--ka-tekst:#d6d8da;--ka-gedempt:#a3a8ad;--ka-lijn:#2c3033;--ka-lijn-sterk:#3a3f43;
  --ka-kaart:#17191b;--ka-tegel:#1f2225;--ka-groen-tekst:#34d399;--ka-groen-vlak:rgba(16,185,129,.15);
}

@media (max-width:600px){
  .tbg-ka-pop{align-items:flex-end;padding:0}
  .tbg-ka-pop__vak{max-width:none;max-height:92vh;border-radius:14px 14px 0 0;padding:22px 18px calc(22px + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:no-preference){
  .tbg-ka-pop:not([hidden]) .tbg-ka-pop__vak{animation:tbg-ka-in .18s ease-out}
  @keyframes tbg-ka-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
}

/* Slide-in (24-10-2026): herinnering op productpagina's met een mailcode. Desktop rechtsonder, mobiel boven de voetbalk.
   De knop opent dezelfde pop-up als de strook (plek slidein). */
.tbg-ks{
  position:fixed;right:24px;bottom:24px;z-index:99990;box-sizing:border-box;width:340px;max-width:calc(100vw - 20px);
  padding:16px 16px 14px;background:var(--tbg-ds-kaart,#fff);border:1px solid var(--tbg-ds-lijn,#eee8e0);border-radius:14px;
  box-shadow:0 18px 44px rgba(15,23,42,.18),0 2px 6px rgba(15,23,42,.06);
  font-family:var(--tbg-ds-font-tekst,"Manrope",system-ui,sans-serif);color:var(--tbg-ds-tekst,#475569);
  opacity:0;transform:translateY(16px);pointer-events:none;visibility:hidden;transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s;
}
.tbg-ks.is-zicht{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition:opacity .25s ease,transform .25s ease}
.tbg-ks *{box-sizing:border-box}
.tbg-ks__x{position:absolute;top:10px;right:10px;width:30px;height:30px;padding:0;border:0;border-radius:8px;background:var(--tbg-ds-tegel,#faf8f4);color:#64748b;display:grid;place-items:center;cursor:pointer}
.tbg-ks__kop{display:flex;gap:11px;align-items:center;padding-right:34px;margin:0 0 8px}
.tbg-ks__kop img{width:36px;height:36px;border-radius:50%;flex:none;object-fit:cover}
.tbg-ks__h{margin:0;font-family:var(--tbg-ds-font-kop,"Geist",system-ui,sans-serif);font-size:16.5px;font-weight:800;line-height:1.25;letter-spacing:-.01em;color:var(--tbg-ds-inkt,#0f172a)}
.tbg-ks__p{margin:0 0 10px;font-size:14px;line-height:1.5}
.tbg-ks__uit{margin:0 0 12px;border-top:1px solid var(--tbg-ds-lijn,#eee8e0)}
.tbg-ks__uit summary{display:flex;align-items:center;gap:6px;padding:9px 0 0;font-size:13.5px;font-weight:700;color:var(--tbg-ds-groen-tekst,#047857);list-style:none;cursor:pointer}
.tbg-ks__uit summary::-webkit-details-marker{display:none}
.tbg-ks__uit summary svg{transition:transform .15s}
.tbg-ks__uit[open] summary svg{transform:rotate(180deg)}
.tbg-ks__uit ul{margin:8px 0 0;padding:0;list-style:none}
.tbg-ks__uit li{position:relative;margin:0 0 5px;padding-left:16px;font-size:13px;line-height:1.5}
.tbg-ks__uit li::before{content:"";position:absolute;left:3px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--tbg-ds-groen,#10b981)}
.tbg-ks .tbg-ks__ja{
  display:flex;align-items:center;justify-content:center;width:100%;height:44px;margin:0;padding:0 12px;border:0;border-radius:10px;
  background:var(--tbg-ds-groen,#10b981)!important;color:#fff!important;font:inherit;font-size:15px;font-weight:800;line-height:1;cursor:pointer;white-space:normal;
}
.tbg-ks .tbg-ks__ja:hover{background:color-mix(in srgb,var(--tbg-ds-groen,#10b981),#000 12%)!important}
.tbg-ks__nee{display:block;width:100%;margin:6px 0 0;padding:4px;border:0;background:none;font:inherit;font-size:13px;color:#64748b;cursor:pointer}
.tbg-ks__x:focus-visible,.tbg-ks__ja:focus-visible,.tbg-ks__nee:focus-visible,.tbg-ks__uit summary:focus-visible{outline:2px solid var(--tbg-ds-groen,#10b981);outline-offset:2px}
@media (max-width:767px){
  .tbg-ks{left:10px;right:10px;width:auto;max-width:none;bottom:calc(var(--tbg-ks-onder,0px) + 10px);padding:15px 14px 13px}
}
@media (prefers-reduced-motion:reduce){.tbg-ks,.tbg-ks.is-zicht{transition:none;transform:none}}
html[data-theme="dark"] .tbg-ks{background:#17191b;border-color:#2c3033;color:#d6d8da}
html[data-theme="dark"] .tbg-ks__h{color:#f1f2f3}
html[data-theme="dark"] .tbg-ks__x{background:#1f2225;color:#a3a8ad}
html[data-theme="dark"] .tbg-ks__uit{border-color:#2c3033}
html[data-theme="dark"] .tbg-ks__uit summary{color:#34d399}

/* 8.409.170: knopje "Extra korting aanvragen" op een dealkaart (Black Friday, deals); boven de klik-laag van de kaart */
.tbg-ka-kaartknop{position:relative;z-index:3;margin:10px 0 0}
.tbg-ka-strook__knop.tbg-ka-kaartknop__knop{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;font-size:14px}
.tbg-ka-kaartknop__knop svg{flex:none}
/* 8.409.171: tekstlink onder de CTA van een dealkaart */
.tbg-ka-kaartlink{display:block;position:relative;z-index:3;margin:8px 0 0;text-align:center;white-space:normal;font-size:13.5px;line-height:1.4}
.tbg-dd-kaart__cta--knop .tbg-ka-kaartlink{margin-top:0}
.tbg-ka-strook__knop.tbg-ka-kaartlink__knop{display:inline-flex;align-items:center;gap:5px;width:auto;min-height:0;padding:2px 0;margin:0;border:0;border-radius:0;background:none !important;box-shadow:none;
  font:inherit;font-size:13.5px;font-weight:500;color:var(--tbg-ds-groen-donker,#047857);cursor:pointer;
  text-decoration:underline;text-decoration-color:rgba(4,120,87,.4);text-underline-offset:3px}
.tbg-ka-strook__knop.tbg-ka-kaartlink__knop:hover{text-decoration-color:currentColor}
.tbg-ka-kaartlink__knop svg{flex:none;color:var(--tbg-ds-gedempt,#7a7563)}
.tbg-dd-kaart__kalink{display:block;padding:0 10px 10px}
/* 7-11-2026: staat "Extra korting aanvragen" onder een dealkaart, dan houden de andere kaarten in hetzelfde raster
   die regel leeg vrij. Anders stond de knop van die ene kaart 31 px hoger dan die van de buren. Niet in de
   eenkoloms weergave op mobiel (daar staan de kaarten niet naast elkaar). */
@media (min-width: 600px) {
.tbg-dd-raster:has(.tbg-ka-kaartlink) .tbg-dd-kaart__cta--knop:not(:has(.tbg-ka-kaartlink))::after,
.tbg-dd-ft__rij:has(.tbg-ka-kaartlink) .tbg-dd-kaart__cta--knop:not(:has(.tbg-ka-kaartlink))::after{content:"\00a0";display:block;font-size:13.5px;line-height:1.4;padding:2px 0;visibility:hidden}
}

/* 8.409.193: code per mail als couponregel in de winkelrij; de nepcode is wazig en niet te selecteren */
.tbg-ka-rij .tbg-ka-wazig{filter:blur(3.5px);-webkit-user-select:none;user-select:none;letter-spacing:1px}
.tbg-ka-rij .tbg-pv__coupon-code{position:relative;z-index:3}
.tbg-ka-rij .tbg-pv__coupon-act{font-weight:700}
/* Mobiel verbergt de site de knoptekst bij gewone codes; "Aanvragen" moet blijven staan */
.tbg-ka-rij .tbg-pv__coupon-act,.tbg-ka-rij .tbg-pv__coupon-act-txt{display:inline-flex !important;align-items:center}
.tbg-ka-rij .tbg-pv__coupon-act{padding:0 10px;border-left:1.5px dashed #10b981;color:#047857}

/* 8.409.193: rustiger. "Code" blijft bij de code, rand ook als de rij een toegepaste sitecode heeft, en lucht eronder */
.tbg-ka-rij{margin:2px 0 4px}
.tbg-ka-rij__code{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.tbg-pv__row .tbg-ka-rij .tbg-pv__coupon-code{border:1.5px dashed #10b981 !important;border-radius:8px !important;background:#fff !important;font-size:11px}
/* Upgrade naast een code op de site: één rustige regel met een tekstknop */
.tbg-ka-upgrade{position:relative;z-index:3;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin:4px 0;font-size:12.5px;color:var(--tbg-ds-tekst,#3d3b36)}
.tbg-ka-upgrade svg{color:var(--tbg-ds-groen-tekst,#047857);flex:none}
.tbg-ka-upgrade b{color:var(--tbg-ds-groen-tekst,#047857)}
.tbg-ka-upgrade__knop,.tbg-ka-upgrade__knop:hover,.tbg-ka-upgrade__knop:focus{padding:0 !important;margin:0;border:0 !important;background:none !important;box-shadow:none !important;min-height:0;color:var(--tbg-ds-groen-tekst,#047857) !important;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tbg-pv__row .tbg-ka-upgrade__knop{display:inline !important;width:auto !important;text-align:left}
.tbg-ka-upgrade > span{white-space:normal}
.tbg-ka-upgrade b{white-space:nowrap}
.tbg-pv__row .tbg-ka-upgrade__knop{font-size:12.5px !important;line-height:1.4 !important;font-weight:700 !important;letter-spacing:0 !important;text-transform:none !important}

/* 8.409.193: mailcode-regel rustig: grijze tekst, groen alleen voor het icoon en Aanvragen, wazige code als kleine tekst */
.tbg-ka-upgrade{color:var(--tbg-ds-gedempt,#6f6a5e)}
.tbg-ka-upgrade .tbg-ka-wazig{display:inline-block;margin-left:2px;padding:0 4px;font-family:Menlo,Consolas,monospace;font-size:11px;letter-spacing:1px;color:var(--tbg-ds-tekst,#3d3b36);filter:blur(3px)}


section:has(.tbg-deals-leeg){display:none}
.tbg-deals{margin:0 0 18px;font-family:inherit;line-height:1.4}
.tbg-deals__kop{font-size:18px;font-weight:800;color:#0f172a;margin:20px 0 10px}
.tbg-deals__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 16px}
.tbg-deals__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tbg-deals__shopcard{background:#fff;border:1px solid #eee8e0;border-radius:14px;padding:16px;margin:0 0 16px}
.tbg-deals__shopcard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.tbg-deals__shoplist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.tbg-deals__shopitem,.tbg-deals__shopitem:visited{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #eee8e0;border-radius:9px;padding:8px 11px;text-decoration:none;font-size:13px;color:#0f172a;background:#fff;transition:border-color .12s,background .12s;min-width:0}
.tbg-deals__shopitem:hover{border-color:#10b981;background:#f8fffc;color:#0f172a;text-decoration:none}
.tbg-deals__shopitem-naam{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.tbg-deals__shopitem-prijs{flex-shrink:0;font-weight:700;color:#0f6e56;white-space:nowrap}
.tbg-deals__shopitem-code{flex-shrink:0;font-size:11px;color:#8a8577;white-space:nowrap}
.tbg-deals__shopitem-code b{color:#475569;font-weight:700}
.tbg-deals__shopitem--hide{display:none}
.tbg-deals__more{justify-content:center;cursor:pointer;border-style:dashed;color:#64748b;font-family:inherit;font-weight:600;line-height:inherit}
.tbg-deals__more:hover{color:#0f172a;background:#faf8f4;border-color:#d1d5db}
.tbg-deals__card{position:relative;display:flex;flex-direction:column;gap:7px;background:#fff;border:1px solid #eee8e0;border-radius:14px;padding:16px;transition:border-color .15s,transform .15s}
.tbg-deals__card:hover{border-color:#d1d5db;transform:translateY(-1px)}
.tbg-deals__card--ft{padding:18px}
.tbg-deals__card--sp{padding-bottom:30px}
.tbg-deals__img{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:10px;margin:0 0 4px;display:block}
.tbg-deals__img--contain{object-fit:contain;background:#faf8f4;padding:10px;box-sizing:border-box}
.tbg-deals__head{display:flex;align-items:flex-start;gap:11px}
.tbg-deals__head-txt{min-width:0;display:flex;flex-direction:column;gap:3px}
.tbg-deals__thumb{flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #eee8e0;border-radius:10px;overflow:hidden}
.tbg-deals__thumb-img{width:100%;height:100%;object-fit:contain;display:block}
.tbg-deals__title{font-size:15px;font-weight:700;color:#0f172a;margin:0;line-height:1.3}
.tbg-deals__shop{font-size:12px;color:#64748b}
.tbg-deals__text{font-size:13px;color:#475569;margin:0;line-height:1.45}
.tbg-deals__tag{font-size:9px;font-weight:700;padding:2px 7px;border-radius:5px;background:#fff7ed;color:#b45309;border:1px solid #fed7aa;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle;white-space:nowrap}
.tbg-deals__meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;color:#94a3b8;border-top:1px solid #f5f3ee;padding-top:10px;margin-top:auto}
.tbg-deals__priceblok{margin-left:auto;display:inline-flex;align-items:center;gap:7px}
.tbg-deals__card .tbg-deals__price{font-size:16px}
.tbg-deals__chip{position:relative;z-index:3;display:inline-flex;align-items:center;gap:5px;font-family:inherit;font-size:11px;font-weight:700;color:#0f172a !important;background:#fff;border:1.5px dashed #10b981;border-radius:8px;padding:4px 10px;cursor:pointer;line-height:1.4;transition:background .12s,border-color .12s;margin:0}
.tbg-deals__chip:hover{background:#ecfdf5;color:#0f172a !important;border-color:#059669}
.tbg-deals__chip .tbg-deals__chip-val{color:inherit}
.tbg-deals__chip.is-copied{background:#ecfdf5;border-color:#9fe1cb;color:#0f6e56 !important}
.tbg-deals__chip-val{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}
.tbg-deals__until{font-size:11px;color:#94a3b8}
.tbg-deals__price{font-weight:800;font-size:15px;color:#0f172a}
.tbg-deals__for{font-size:11px;color:#94a3b8;margin:0;line-height:1.5}
.tbg-deals__for a{color:#475569;text-decoration:none}
.tbg-deals__for a:hover{color:#10b981}
.tbg-deals__actie{display:block;font-size:13px;font-weight:500;color:#334155;background:#faf8f4;border-radius:8px;padding:7px 10px;margin:0;line-height:1.45}
.tbg-deals__btn,.tbg-deals__btn:visited,.tbg-deals__btn:focus{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#10b981;color:#fff !important;font-weight:700;font-size:13px;padding:9px 14px;border-radius:8px;text-decoration:none;transition:background .12s}
.tbg-deals__btn:hover{background:#059669;color:#fff !important;text-decoration:none}
.tbg-deals__sponsored{position:absolute;right:12px;bottom:9px;font-size:9px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}
.tbg-deals__rows{background:#fff;border:1px solid #eee8e0;border-radius:12px;overflow:hidden;margin:0 0 16px}
.tbg-deals__row{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid #f5f3ee;text-decoration:none;transition:background .12s}
.tbg-deals__row:first-child{border-top:none}
.tbg-deals__row:hover{background:#faf8f4}
.tbg-deals__row-main{flex:1;min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}
.tbg-deals__row-title,.tbg-deals__row-title:visited{font-weight:700;font-size:14px;color:#0f172a;text-decoration:none}
.tbg-deals__row-title:hover{color:#10b981;text-decoration:none}
.tbg-deals__badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:5px;background:#ecfdf5;color:#0f6e56;border:1px solid #9fe1cb;letter-spacing:.02em;white-space:nowrap}
.tbg-deals__row-shop{font-size:11px;color:#94a3b8;flex-basis:100%}
.tbg-deals__row-price{display:flex;align-items:center;gap:7px;flex-shrink:0}
.tbg-deals__was{font-size:11px;color:#94a3b8;text-decoration:line-through}
.tbg-deals__pct{font-size:11px;font-weight:700;color:#0f6e56;background:#ecfdf5;border:1px solid #9fe1cb;border-radius:5px;padding:2px 7px;white-space:nowrap}
.tbg-deals__row-cta,.tbg-deals__row-cta:visited,.tbg-deals__row-cta:focus{display:inline-flex;align-items:center;gap:5px;background:#10b981;color:#fff !important;font-weight:700;font-size:12px;padding:7px 13px;border-radius:8px;white-space:nowrap;flex-shrink:0;text-decoration:none;transition:background .15s}
.tbg-deals__row-cta:hover,.tbg-deals__row:hover .tbg-deals__row-cta{background:#059669;color:#fff !important;text-decoration:none}
@media(max-width:900px){
.tbg-deals__grid--3{grid-template-columns:1fr 1fr}
.tbg-deals__shoplist{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
.tbg-deals__grid,.tbg-deals__grid--3{grid-template-columns:1fr;gap:10px}
.tbg-deals__shoplist{grid-template-columns:1fr}
.tbg-deals__btn{width:100%}
.tbg-deals__thumb{width:48px;height:48px}
.tbg-deals__row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:6px 10px;padding:12px 13px;align-items:start}
.tbg-deals__row-main{grid-column:2}
.tbg-deals__row-price{grid-column:2;justify-content:flex-start;flex-wrap:wrap}
.tbg-deals__row-cta,.tbg-deals__row-cta:visited,.tbg-deals__row-cta:focus{grid-column:1 / -1;justify-content:center;width:100%;padding:9px 12px}
.tbg-deals__shopcard-head{flex-direction:column;align-items:flex-start;gap:8px}
}

