/* Ta Bonne Pioche. Styles charges apres les filtres boutique.
   Menu, bandeau, contact, avis. Un seul exemplaire (les doublons ont ete retires).
*/

/* --- Eco-participation --- */
.woocommerce .product .tbp-eco-part{font-size:.95rem;margin:.25rem 0 0;color:#444}
        .order-eco-part th,.order-eco-part td{border-top:1px dotted rgba(0,0,0,.12)}

/* --- Pastille panier --- */
.wp-block-woocommerce-mini-cart .wc-block-mini-cart__badge,
        .wc-block-mini-cart .wc-block-mini-cart__badge,
        .wc-block-mini-cart__quantity-badge .wc-block-mini-cart__badge {
            background: #e34fa5 !important;
            background-color: #e34fa5 !important;
            color: #ffffff !important;
            border-color: #e34fa5 !important;
        }

/* --- Liens du pied de page --- */
footer.wp-block-template-part a:not(.wp-element-button):not(.wp-block-social-link-anchor),footer.site-footer a:not(.wp-element-button):not(.wp-block-social-link-anchor){color:inherit!important;text-decoration:none!important}footer.wp-block-template-part a:not(.wp-element-button):not(.wp-block-social-link-anchor):hover,footer.wp-block-template-part a:not(.wp-element-button):not(.wp-block-social-link-anchor):focus-visible,footer.site-footer a:not(.wp-element-button):not(.wp-block-social-link-anchor):hover,footer.site-footer a:not(.wp-element-button):not(.wp-block-social-link-anchor):focus-visible{color:inherit!important;text-decoration:underline!important}footer.wp-block-template-part .wp-block-column>.wp-block-paragraph,footer.site-footer .wp-block-column>.wp-block-paragraph{margin-block-start:0!important;margin-bottom:0!important;font-size:var(--wp--preset--font-size--medium)}footer nav[aria-label="Légal"],footer nav[aria-label="Légal"] .wp-block-navigation__container{gap:var(--wp--preset--spacing--30)!important;flex-direction:column;align-items:flex-start}footer .wp-block-column>h3+.wp-block-paragraph{margin-block-start:20px!important}footer .wp-block-column>.wp-block-paragraph+.wp-block-paragraph{margin-block-start:var(--wp--preset--spacing--30)!important}

/* --- Ajustements SEO visuels --- */
.tbp-seo-guides{margin:1.5rem 0;padding:1rem 1.15rem;border-top:1px solid rgba(0,0,0,.08)}.tbp-seo-guides__title{margin:0 0 .6rem;font-size:1.05rem;font-weight:700}.tbp-seo-guides__list{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}.tbp-seo-guides__list a{text-decoration:underline}.tbp-seo-guides--footer{border-top:0;margin:1rem 0 0;padding:0}.tbp-seo-guides--footer .tbp-seo-guides__title{color:inherit;opacity:.9}.tbp-seo-guides--footer a{color:inherit}@media (min-width:768px){.tbp-seo-guides__list{grid-template-columns:1fr 1fr}}

/* --- Taille du logo --- */
.tbp-header .tbp-header__logo{flex:0 0 auto!important}.tbp-header .tbp-header__logo .wp-block-site-logo,.tbp-header .tbp-header__logo .custom-logo-link{flex-basis:auto!important;width:auto!important}.tbp-header .tbp-header__logo .custom-logo,.tbp-header .wp-block-site-logo img,.tbp-header .wp-block-site-logo.is-default-size img{width:200px!important;max-width:none!important;height:auto!important}@media (max-width:900px){.tbp-header .tbp-header__logo .custom-logo,.tbp-header .wp-block-site-logo img,.tbp-header .wp-block-site-logo.is-default-size img{width:148px!important}}@media (max-width:480px){.tbp-header .tbp-header__logo .custom-logo,.tbp-header .wp-block-site-logo img,.tbp-header .wp-block-site-logo.is-default-size img{width:124px!important}}

/* --- Menu et barre d'actions --- */
:root {
            --tbp-topbar-btn-height: 40px;
        }

        .tbp-footer-line {
            align-items: center !important;
            gap: 14px;
        }

        .tbp-footer-line > * {
            align-self: center !important;
        }

        .tbp-footer-line .wp-block-buttons,
        .tbp-footer-line .wp-block-button,
        .tbp-footer-line .tbp-menu-compact,
        .tbp-footer-line .tbp-scm-accordion,
        .tbp-footer-line .tbp-fab {
            display: flex;
            align-items: center;
            margin: 0 !important;
        }

        .tbp-footer-line .wp-block-button__link,
        .tbp-footer-line .tbp-menu-repair,
        .tbp-footer-line .tbp-btn-contact,
        .tbp-footer-line .tbp-scm-acc__toggle {
            box-sizing: border-box;
            min-height: var(--tbp-topbar-btn-height);
            height: var(--tbp-topbar-btn-height);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            margin: 0 !important;
            line-height: 1;
        }

        .tbp-footer-line .wp-block-button__link {
            padding-top: 0 !important;
            padding-bottom: 0 !important;
        }

        .tbp-footer-line .tbp-fab__main {
            width: var(--tbp-topbar-btn-height);
            height: var(--tbp-topbar-btn-height);
        }

        .tbp-footer-line .tbp-menu-repair,
        .tbp-footer-line .tbp-btn-contact {
            padding-top: 0 !important;
            padding-bottom: 0 !important;
        }

        .tbp-footer-line .tbp-boutique-target .wp-block-button__link {
            display: inline-flex !important;
            align-items: center;
            justify-content: center;
            gap: 8px;
        }

        .tbp-footer-line .tbp-boutique-target .wp-block-button__link::before {
            content: '' !important;
            width: 24px;
            height: 24px;
            flex: 0 0 24px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5h18'/%3E%3Cpath d='M4.2 8.5 5.4 4.5h13.2l1.2 4'/%3E%3Cpath d='M5.5 8.5v10.2a1.3 1.3 0 0 0 1.3 1.3h10.4a1.3 1.3 0 0 0 1.3-1.3V8.5'/%3E%3Cpath d='M9.2 20v-4.8a.7.7 0 0 1 .7-.7h4.2a.7.7 0 0 1 .7.7V20'/%3E%3Cpath d='M7.9 11.4h1.6'/%3E%3Cpath d='M14.5 11.4h1.6'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
        }

        .tbp-scm-accordion .tbp-scm-acc__toggle {
            appearance: none;
            touch-action: manipulation;
            -webkit-tap-highlight-color: rgba(30, 75, 174, 0.12);
            background: #ffffff;
            border: 2px solid #1e4bae;
            border-radius: 16px;
            color: #173578;
            box-shadow: none;
            transition:
                background 0.22s ease,
                border-color 0.22s ease,
                color 0.22s ease;
        }

        .tbp-scm-accordion .tbp-scm-acc__label {
            color: #173578;
            font-weight: 700;
            letter-spacing: 0.01em;
        }

        .tbp-scm-accordion .tbp-scm-acc__hamburger span {
            background: #1e4bae !important;
            transition: background 0.22s ease;
        }

        .tbp-scm-accordion .tbp-scm-acc__chev {
            border-color: #1e4bae !important;
            transition: border-color 0.22s ease;
        }

        .tbp-scm-accordion .tbp-scm-acc__toggle:hover,
        .tbp-scm-accordion .tbp-scm-acc__toggle:focus-visible,
        .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__toggle {
            background: #1e4bae;
            border-color: transparent;
            color: #ffffff;
            box-shadow: none;
            transform: none;
            outline: none;
        }

        .tbp-scm-accordion .tbp-scm-acc__toggle:hover .tbp-scm-acc__label,
        .tbp-scm-accordion .tbp-scm-acc__toggle:focus-visible .tbp-scm-acc__label,
        .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__label {
            color: #ffffff;
        }

        .tbp-scm-accordion .tbp-scm-acc__toggle:hover .tbp-scm-acc__hamburger span,
        .tbp-scm-accordion .tbp-scm-acc__toggle:focus-visible .tbp-scm-acc__hamburger span,
        .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__hamburger span {
            background: #ffffff !important;
        }

        .tbp-scm-accordion .tbp-scm-acc__toggle:hover .tbp-scm-acc__chev,
        .tbp-scm-accordion .tbp-scm-acc__toggle:focus-visible .tbp-scm-acc__chev,
        .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__chev {
            border-color: #ffffff !important;
        }

        .tbp-scm-accordion .tbp-scm-acc__panel {
            margin-top: 0.6rem;
            padding: 12px 10px 10px;
            border: 1px solid rgba(30, 75, 174, 0.22);
            border-radius: 18px;
            background: linear-gradient(160deg, #ffffff 0%, #f6f9ff 52%, #fff5fc 100%);
            box-shadow:
                0 16px 34px rgba(13, 39, 108, 0.2),
                0 6px 16px rgba(227, 79, 165, 0.16);
            backdrop-filter: blur(1.5px);
            max-height: min(78vh, calc(100dvh - 110px));
            overflow-x: hidden;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            overscroll-behavior: contain;
        }

        .tbp-scm-accordion .tbp-scm-acc__panel[hidden] {
            display: none !important;
        }

        .tbp-scm-accordion .tbp-scm-search {
            position: sticky;
            top: 0;
            z-index: 2;
            padding: 2px 4px 12px;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(246, 249, 255, 0.9) 70%, rgba(246, 249, 255, 0) 100%);
        }

        .tbp-scm-accordion .tbp-scm-search__input {
            width: 100%;
            height: 44px;
            border: 2px solid #1e4bae;
            border-radius: 14px;
            background: #ffffff;
            color: #173578;
            font-size: 1rem;
            font-weight: 600;
            padding: 0 14px;
            touch-action: manipulation;
            -webkit-text-size-adjust: 100%;
            box-shadow:
                inset 0 0 0 1px rgba(255, 255, 255, 0.7),
                0 5px 12px rgba(30, 75, 174, 0.12);
            transition:
                border-color 0.2s ease,
                box-shadow 0.2s ease,
                background 0.2s ease;
        }

        .tbp-scm-accordion .tbp-scm-search__input::placeholder {
            color: #5f6f99;
            font-weight: 500;
        }

        .tbp-scm-accordion .tbp-scm-search__input:focus {
            outline: none;
            border-color: #e34fa5;
            background: #ffffff;
            box-shadow:
                0 0 0 3px rgba(227, 79, 165, 0.18),
                0 8px 16px rgba(30, 75, 174, 0.14);
        }

        .tbp-scm-accordion .tbp-scm-list {
            list-style: none;
            margin: 0;
            padding: 0 0 8px;
            display: grid;
            gap: 5px;
        }

        .tbp-scm-accordion .tbp-scm-list__link {
            display: grid;
            grid-template-columns: 38px minmax(0, 1fr) auto;
            align-items: center;
            gap: 12px;
            padding: 9px 8px;
            border-radius: 12px;
            text-decoration: none;
            border: 1px solid transparent;
            touch-action: manipulation;
            -webkit-tap-highlight-color: rgba(30, 75, 174, 0.12);
            transition:
                background 0.2s ease,
                border-color 0.2s ease,
                box-shadow 0.2s ease,
                transform 0.16s ease;
        }

        .tbp-scm-accordion .tbp-scm-list__link:hover,
        .tbp-scm-accordion .tbp-scm-list__link:focus-visible {
            background: linear-gradient(120deg, #ffffff 0%, #f5f9ff 55%, #fef3fb 100%);
            border-color: rgba(30, 75, 174, 0.2);
            box-shadow:
                0 8px 14px rgba(30, 75, 174, 0.13),
                0 2px 8px rgba(227, 79, 165, 0.12);
            transform: translateX(2px);
            outline: none;
        }

        .tbp-scm-accordion .tbp-scm-list__thumb {
            width: 34px;
            height: 34px;
            border-radius: 11px;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            background-color: #ebf3ff;
            box-shadow:
                inset 0 0 0 1px rgba(30, 75, 174, 0.16),
                0 4px 10px rgba(30, 75, 174, 0.13);
        }

        .tbp-scm-accordion .tbp-scm-list__name {
            color: #102d6f;
            font-size: 1.02rem;
            font-weight: 700;
            line-height: 1.2;
        }

        .tbp-scm-accordion .tbp-scm-list__badge {
            min-width: 30px;
            height: 30px;
            border-radius: 999px;
            padding: 0 8px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #ffffff;
            font-size: 0.93rem;
            font-weight: 700;
            background: #1e4bae;
            box-shadow:
                0 6px 12px rgba(30, 75, 174, 0.24),
                inset 0 0 0 1px rgba(255, 255, 255, 0.24);
        }

        @media (max-width: 767px) {
            :root {
                --tbp-topbar-btn-height: 34px;
            }


            /* Barre actions: no shadow */
            .tbp-footer-line .tbp-scm-acc__toggle,
            .tbp-footer-line .tbp-scm-acc__toggle:hover,
            .tbp-footer-line .tbp-scm-acc__toggle:focus-visible,
            .tbp-footer-line .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__toggle,
            .tbp-footer-line .tbp-menu-repair,
            .tbp-footer-line .tbp-btn-contact,
            .tbp-footer-line .tbp-fab__main,
            .tbp-footer-line .wp-block-button__link {
                box-shadow: none !important;
                transform: none !important;
            }

            .tbp-footer-line {
                gap: 6px !important;
                justify-content: space-between !important;
                flex-wrap: nowrap !important;
                align-items: center !important;
                width: 100% !important;
                max-width: 100% !important;
                overflow-x: hidden !important;
                box-sizing: border-box !important;
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

            .tbp-footer-line > * {
                flex: 0 0 auto;
                min-width: 0;
            }

            .tbp-footer-line .tbp-menu-repair {
                margin-right: 0 !important;
                flex-shrink: 0;
            }

            .tbp-footer-line .tbp-fab {
                margin-left: 0 !important;
                margin-right: 0 !important;
                flex-shrink: 0;
            }

            .tbp-footer-line .tbp-btn-contact {
                margin-left: 0 !important;
                flex-shrink: 0;
            }

            .tbp-footer-line .superb-addons-hide-on-mobile,
            .tbp-footer-line .wp-block-buttons.superb-addons-hide-on-mobile,
            .tbp-footer-line .superb-addons-hide-on-mobile .wp-block-button {
                display: flex !important;
            }

            .tbp-footer-line .tbp-menu-compact {
                margin-right: 0 !important;
                flex: 0 0 auto;
            }

            .tbp-footer-line .tbp-scm-accordion .tbp-scm-acc__label,
            .tbp-footer-line .tbp-scm-accordion .tbp-scm-acc__chev {
                display: none !important;
            }

            .tbp-footer-line .tbp-scm-accordion .tbp-scm-acc__toggle {
                min-width: var(--tbp-topbar-btn-height) !important;
                width: var(--tbp-topbar-btn-height) !important;
                height: var(--tbp-topbar-btn-height);
                padding: 0 !important;
                gap: 0 !important;
                justify-content: center !important;
            }

            .tbp-footer-line .tbp-scm-accordion .tbp-scm-acc__hamburger {
                margin: 0 !important;
                flex-shrink: 0;
            }

            .tbp-footer-line .tbp-boutique-target {
                flex: 1 1 auto;
                min-width: 0;
                max-width: 100%;
            }

            .tbp-footer-line .tbp-boutique-target .wp-block-buttons,
            .tbp-footer-line .tbp-boutique-target .wp-block-button {
                width: 100%;
                max-width: 100%;
            }

            .tbp-footer-line .tbp-boutique-target .wp-block-button__link {
                display: inline-flex !important;
                min-height: var(--tbp-topbar-btn-height);
                height: var(--tbp-topbar-btn-height);
                min-width: 0;
                width: 100%;
                max-width: 100%;
                padding: 0 10px !important;
                gap: 5px !important;
                font-size: 0.8rem !important;
                line-height: 1 !important;
                color: #ffffff !important;
                text-shadow: none !important;
                opacity: 1 !important;
                visibility: visible !important;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                box-sizing: border-box !important;
            }

            .tbp-footer-line .tbp-boutique-target .wp-block-button__link::before {
                width: 17px;
                height: 17px;
                flex: 0 0 17px;
                margin: 0;
            }

            .tbp-footer-line .tbp-btn-contact {
                display: inline-flex !important;
                min-height: var(--tbp-topbar-btn-height);
                height: var(--tbp-topbar-btn-height);
                min-width: var(--tbp-topbar-btn-height);
                width: var(--tbp-topbar-btn-height);
                padding: 0 !important;
                gap: 0 !important;
                font-size: 0 !important;
                line-height: 0 !important;
                color: transparent !important;
                text-shadow: none !important;
                overflow: hidden;
            }

            .tbp-footer-line .tbp-btn-contact svg {
                width: 18px !important;
                height: 18px !important;
                flex: 0 0 18px;
                margin: 0 !important;
            }


            .tbp-footer-line .tbp-menu-repair {
                min-width: var(--tbp-topbar-btn-height) !important;
                width: var(--tbp-topbar-btn-height) !important;
                padding: 0 !important;
            }

            .tbp-footer-line .tbp-conseils-target,
            .tbp-footer-line .tbp-conseils-target .wp-block-button,
            .tbp-footer-line .tbp-conseils-target .wp-block-button__link {
                display: none !important;
            }

            .tbp-scm-accordion .tbp-scm-acc__panel {
                padding: 10px 8px 8px;
                border-radius: 16px;
            }

            .tbp-scm-accordion .tbp-scm-search__input {
                height: 42px;
                font-size: 16px;
            }

            .tbp-scm-accordion .tbp-scm-list__link {
                gap: 10px;
                padding: 8px 7px;
            }

            .tbp-scm-accordion .tbp-scm-list__name {
                font-size: 0.98rem;
            }

            .tbp-scm-accordion .tbp-scm-list__badge {
                min-width: 29px;
                height: 29px;
                font-size: 0.88rem;
            }
        }

/* --- Lien reparation du menu --- */
.tbp-menu-repair {
    display: inline-flex !important;
    align-items: center !important;
    padding: 8px 16px !important;
    border-radius: 999px !important;
    background: #1e4bae !important;
    background-image: none !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    line-height: 1 !important;
    box-shadow: none !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}
.tbp-menu-repair:hover,
.tbp-menu-repair:focus-visible {
    background: #173f96 !important;
    background-image: none !important;
    transform: translateY(-1px);
    box-shadow: none !important;
}
.tbp-menu-repair-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    height: 26px !important;
    margin-right: 8px !important;
    color: #ffffff !important;
    flex-shrink: 0 !important;
    line-height: 0 !important;
}
.tbp-menu-repair-icon svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
    overflow: visible !important;
    fill: currentColor !important;
}
.tbp-menu-repair-text {
    white-space: nowrap !important;
}
@media (max-width: 768px) {
    .tbp-menu-repair {
        padding: 8px 12px !important;
    }
    .tbp-menu-repair-icon {
        margin-right: 0 !important;
    }
    .tbp-menu-repair-text {
        display: none !important;
    }
}

/* --- Boutique mobile, une colonne --- */
/* tbp-shop-mobile-one-col-v104 */
@media (max-width: 782px) {
	body .tbp-shop-simple-layout__results .wc-block-product-template,
	body .tbp-shop-simple-layout__results .wc-block-product-template__responsive,
	body .tbp-shop-simple-layout__results .wc-block-product-template__responsive.columns-2,
	body .tbp-shop-simple-layout__results .wc-block-product-template__responsive.columns-3,
	body .tbp-shop-simple-layout__results .wc-block-product-template__responsive.columns-4,
	body .tbp-shop-simple-layout__results .wc-block-product-template__responsive.columns-5,
	body .tbp-shop-simple-layout__results .wc-block-product-template__responsive.columns-6,
	body.woocommerce-shop .wc-block-product-template__responsive.columns-4,
	body.post-type-archive-product .wc-block-product-template__responsive.columns-4,
	body.tax-product_cat .wc-block-product-template__responsive.columns-4 {
		display: grid !important;
		grid-template-columns: minmax(0, min(280px, calc(100vw - 48px))) !important;
		gap: 16px !important;
		justify-content: center !important;
		justify-items: center !important;
	}
	body .tbp-shop-simple-layout__results .wc-block-product,
	body.woocommerce-shop .wc-block-product,
	body.post-type-archive-product .wc-block-product,
	body.tax-product_cat .wc-block-product {
		width: 100% !important;
		max-width: min(280px, calc(100vw - 48px)) !important;
		min-width: 0 !important;
		justify-self: center !important;
	}
}

/* --- Menu principal --- */
.tbp-footer-line .tbp-conseils-target,
			.tbp-footer-line .tbp-header-main-hidden,
			.tbp-footer-line .wp-block-buttons:has(.wp-block-button__link[href*="/conseils"]),
			.tbp-footer-line .wp-block-buttons:has(.wp-block-button__link[href*="/conseils-dutilisation"]) {
				display: none !important;
			}

			.tbp-footer-line .tbp-menu-repair {
				background: #1e4bae !important;
				background-image: none !important;
				color: #ffffff !important;
				box-shadow: none !important;
			}

			.tbp-footer-line .tbp-menu-repair:hover,
			.tbp-footer-line .tbp-menu-repair:focus-visible {
				background: #173578 !important;
				background-image: none !important;
				box-shadow: none !important;
			}

			/* Barre d’actions : pas d’ombres (reste simple) */
			.tbp-footer-line .tbp-btn-contact,
			.tbp-footer-line .tbp-btn-contact:hover,
			.tbp-footer-line .tbp-btn-contact:focus-visible,
			.tbp-footer-line .tbp-fab__main,
			.tbp-footer-line .tbp-fab__main:hover,
			.tbp-footer-line .tbp-scm-acc__toggle,
			.tbp-footer-line .tbp-scm-acc__toggle:hover,
			.tbp-footer-line .tbp-scm-acc__toggle:focus-visible,
			.tbp-footer-line .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__toggle,
			.tbp-footer-line .wp-block-button__link,
			.tbp-footer-line .wp-block-button__link:hover {
				box-shadow: none !important;
				transform: none !important;
			}

			.tbp-footer-line .tbp-fab {
				order: 50 !important;
			}

			.tbp-footer-line .tbp-btn-contact {
				order: 60 !important;
			}

/* --- Bandeau promo --- */
.bande-fade.tbp-banner {
  --tbp-denim: #1e4bae;
  --tbp-raspberry: #e34fa5;
  --tbp-electric: #7af1f5;
  background: var(--tbp-denim);
  color: #fff;
  padding: 0 14px;
  font-size: 14px;
  font-weight: 500;
  font-family: Poppins, sans-serif;
  position: relative;
  overflow: hidden;
  height: 46px;
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
.tbp-banner__marquee {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  height: 46px;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 18px, #000 calc(100% - 28px), transparent);
  mask-image: linear-gradient(90deg, transparent, #000 18px, #000 calc(100% - 28px), transparent);
}
.tbp-banner__rail {
  display: flex;
  align-items: center;
  width: max-content;
  height: 46px;
  animation: tbp-banner-marquee 32s linear infinite;
}
.bande-fade.tbp-banner:hover .tbp-banner__rail,
.bande-fade.tbp-banner:focus-within .tbp-banner__rail {
  animation-play-state: paused;
}
.tbp-banner__group {
  display: flex;
  align-items: center;
  height: 46px;
}
.tbp-banner__item {
  display: inline-flex;
  align-items: center;
  gap: 0.2em;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  font-weight: 500;
  padding: 0 2px;
}
.tbp-banner__item:hover,
.tbp-banner__item:focus-visible {
  color: var(--tbp-electric);
}
.tbp-banner__item em {
  font-family: Boldonse, Poppins, sans-serif;
  font-style: normal;
  font-size: 15px;
  color: var(--tbp-electric);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1;
  transform: translateY(1px);
}
.tbp-banner__sep {
  width: 7px;
  height: 7px;
  margin: 0 28px;
  flex: 0 0 auto;
  background: var(--tbp-electric);
  transform: rotate(45deg);
  border-radius: 1px;
  opacity: 0.95;
}
@keyframes tbp-banner-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width: 700px) {
  .bande-fade.tbp-banner { padding: 0 8px; }
  .tbp-banner__sep { margin: 0 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .tbp-banner__rail { animation: none; }
  .tbp-banner__marquee {
    -webkit-mask-image: none;
    mask-image: none;
    overflow-x: auto;
  }
}

.tbp-notice {
  --tbp-denim: #1e4bae;
  --tbp-raspberry: #e34fa5;
  --tbp-electric: #7af1f5;
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(16, 32, 90, 0.52);
  backdrop-filter: blur(4px);
}
.tbp-notice[hidden] { display: none !important; }
.tbp-notice__card {
  position: relative;
  width: min(420px, 100%);
  background: #fff;
  border-radius: 24px;
  padding: 28px 26px 24px;
  box-shadow: 0 24px 50px rgba(16, 32, 90, 0.22);
  font-family: Poppins, sans-serif;
  color: #1e4bae;
  text-align: center;
}
.tbp-notice__card::before {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 0;
  height: 5px;
  border-radius: 0 0 8px 8px;
  background: var(--tbp-raspberry);
}
.tbp-notice__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #f4f6fb;
  color: #1e4bae;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}
.tbp-notice__close:hover,
.tbp-notice__close:focus-visible {
  background: #e34fa5;
  color: #fff;
  outline: none;
}
.tbp-notice__kicker {
  display: inline-block;
  margin: 4px 0 10px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(227, 79, 165, 0.12);
  color: var(--tbp-raspberry);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.tbp-notice__title {
  margin: 0 0 10px;
  font-family: Boldonse, Poppins, sans-serif;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 400;
  color: #1e4bae;
}
.tbp-notice__text {
  margin: 0 0 22px;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 500;
  color: #1e4bae;
}
.tbp-notice__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  border: 0;
  border-radius: 999px;
  padding: 12px 22px;
  background: var(--tbp-raspberry);
  color: #fff;
  font-family: Poppins, sans-serif;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
}
.tbp-notice__btn:hover,
.tbp-notice__btn:focus-visible {
  background: #1e4bae;
  outline: 2px solid #7af1f5;
  outline-offset: 2px;
}
body.tbp-notice-open { overflow: hidden; }

/* --- Bouton contact --- */
:root{ --tbp-blue:#1e4bae; }

/* Bouton (desktop par défaut) */
.tbp-btn-contact{
  display:inline-flex;
  align-items:center;
  justify-content:center;     /* centre le texte + icône */
  gap:.4rem;                  /* espace réduit */
  padding:.85rem 1.3rem;
  border-radius:999px;
  font-weight:700;
  text-decoration:none;
  line-height:1.15;
  background:var(--tbp-blue);
  color:#fff;
  box-shadow:0 6px 18px rgba(30,75,174,.25);
  transition:transform .15s, box-shadow .15s;
  -webkit-appearance:none; appearance:none;
}
.tbp-btn-contact svg{ stroke:#fff }
.tbp-btn-contact:hover{ transform:translateY(-1px); box-shadow:0 8px 22px rgba(30,75,174,.35) }
.tbp-btn-contact:focus{ outline:3px solid #fff; outline-offset:2px }

/* Bouton (mobile) — plus petit */
@media (max-width:640px){
  .tbp-btn-contact{
    gap:.35rem;
    padding:.55rem .9rem;      /* paddings réduits */
    font-size:14px;            /* texte plus petit */
  }
  .tbp-btn-contact svg{
    width:14px; height:14px;   /* icône plus petite */
  }
}

/* Drawer container */
.tbp-drawer[hidden]{ display:none }
.tbp-drawer{ position:fixed; inset:0; z-index:9999 }
.tbp-drawer__backdrop{
  position:absolute; inset:0; background:rgba(15,23,42,.45);
  opacity:0; transition:opacity .18s ease-out;
}
.tbp-drawer--open .tbp-drawer__backdrop{ opacity:1 }

/* Panel (desktop) */
.tbp-drawer__panel{
  position:absolute; top:0; right:0; height:100%;
  width:min(340px, 90vw);
  background:var(--tbp-blue); color:#fff;
  border-left:1px solid rgba(255,255,255,.15);
  box-shadow:-24px 0 60px rgba(30,75,174,.25);
  transform:translateX(100%);
  transition:transform .24s cubic-bezier(.2,.7,.2,1);
  padding:1.2rem 1rem 1rem;
  border-top-left-radius:16px; border-bottom-left-radius:16px;
  overflow:auto; -webkit-overflow-scrolling:touch;
}
.tbp-drawer--open .tbp-drawer__panel{ transform:none }

/* Panel (mobile: bottom sheet) */
@media (max-width:640px){
  .tbp-drawer__panel{
    position:fixed; left:0; right:0; bottom:0; top:auto;
    width:100%; height:auto;
    max-height:calc(100svh - 24px - env(safe-area-inset-bottom, 0px));
    border-radius:16px 16px 0 0; border-left:none;
    box-shadow:0 -18px 60px rgba(30,75,174,.25);
    transform:translateY(110%);
    padding-bottom:calc(1rem + env(safe-area-inset-bottom, 0px));
  }
  .tbp-drawer--open .tbp-drawer__panel{ transform:none }
}

/* Close button */
.tbp-drawer__close{
  position:absolute; top:.6rem; right:.6rem;
  width:40px; height:40px; border-radius:999px; border:none;
  background:rgba(255,255,255,.15);
  font-size:22px; line-height:1; cursor:pointer; color:#fff;
}
.tbp-drawer__close:hover{ background:rgba(255,255,255,.25) }
.tbp-drawer__subtitle{ color:rgba(255,255,255,.85); margin:.25rem 0 1rem }
.tbp-drawer__fine{ color:rgba(255,255,255,.85); font-size:.95rem; margin:1rem 0 0 }

/* Actions */
.tbp-drawer__actions{ display:grid; gap:.7rem }
.tbp-chip{
  display:flex; align-items:center; gap:.6rem;
  text-decoration:none; padding:1rem 1rem; border-radius:14px;
  font-weight:600; border:1px solid rgba(255,255,255,.25);
  color:#fff; background:rgba(255,255,255,.10);
}
.tbp-chip:hover{ background:rgba(255,255,255,.20); border-color:rgba(255,255,255,.4); transform:translateY(-1px) }
.tbp-chip__label{ font-weight:700 }
.tbp-chip__meta{ margin-left:auto; color:rgba(255,255,255,.95); font-weight:500 }

@media (prefers-reduced-motion: reduce){
  .tbp-drawer__panel, .tbp-drawer__backdrop, .tbp-btn-contact{ transition:none !important }
}

/* Empêche le scroll du fond quand le volet est ouvert */
body.tbp-no-scroll{
  position:fixed; width:100%; overflow:hidden; height:100svh;
}

/* --- Bouton flottant --- */
:root{
  --tbp-pink:#e34fa5; /* Rose TBP */
}

.tbp-fab{
  position:relative;
  display:inline-block;
  z-index:50;
}

/* Bouton principal */
.tbp-fab__main{
  display:flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:50%;
  background:var(--tbp-pink); color:#fff; border:none; cursor:pointer;
  box-shadow:0 6px 18px rgba(227,79,165,.35);
  transition:transform .25s ease;
}
.tbp-fab__main:hover{ transform:scale(1.05) }
.tbp-fab__main svg{ stroke:#fff }

/* Options */
.tbp-fab__option{
  position:absolute;
  top:50%; left:50%;
  width:44px; height:44px; border-radius:50%;
  background:#fff; display:flex; align-items:center; justify-content:center;
  transform:translate(-50%,-50%) scale(0);
  opacity:0; pointer-events:none;
  box-shadow:0 4px 12px rgba(0,0,0,.2);
  transition:transform .25s cubic-bezier(.2,.7,.2,1), opacity .25s ease;
}
.tbp-fab__option img{
  width:24px; height:24px; object-fit:contain;
  border-radius:6px; /* pour garder un peu de style arrondi */
}

/* Apparition bas-gauche et bas-droite */
.tbp-fab.open .tbp-fab__maps{
  transform:translate(-140%, 70%) scale(1);
  opacity:1; pointer-events:auto;
}
.tbp-fab.open .tbp-fab__waze{
  transform:translate(40%, 70%) scale(1);
  opacity:1; pointer-events:auto;
}

/* Réduction animations */
@media (prefers-reduced-motion: reduce){
  .tbp-fab__option, .tbp-fab__main{ transition:none !important }
}

/* =========================
   VERSION MOBILE
   ========================= */
@media (max-width:768px){
  .tbp-fab__main{
    width:44px;   /* plus petit */
    height:44px;
  }
  .tbp-fab__main svg{
    width:18px;
    height:18px;
  }

  .tbp-fab__option{
    width:38px;
    height:38px;
  }
  .tbp-fab__option img{
    width:20px;
    height:20px;
  }
}

/* --- Avis Google --- */
.tbp-grw-shell {
	--tbp-denim: #1e4bae;
	--tbp-denim-strong: #163c8d;
	--tbp-raspberry: #e34fa5;
	--tbp-electric: #7af1f5;
	--tbp-pastel: #ee95c9;
	--tbp-diamond: #b3f7fa;
	--tbp-ink: #1e3472;
	--tbp-muted: #5f6f9f;
	--tbp-star: #fb8e28;
	width: 100%;
	max-width: 1100px;
	margin: clamp(1.25rem, 2.8vw, 2.4rem) auto 0;
	padding: clamp(1.15rem, 2.4vw, 1.85rem);
	box-sizing: border-box;
	border-radius: 28px;
	background:
		radial-gradient(circle at top left, rgba(179, 247, 250, 0.55), transparent 42%),
		radial-gradient(circle at bottom right, rgba(238, 149, 201, 0.28), transparent 38%),
		#ffffff;
	border: 1px solid rgba(30, 75, 174, 0.12);
	box-shadow: 0 18px 40px rgba(30, 75, 174, 0.10);
}

.tbp-grw-shell__intro {
	margin: 0 0 1.15rem;
}

.tbp-grw-shell__eyebrow {
	margin: 0 0 0.45rem;
	font-family: Poppins, sans-serif;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--tbp-raspberry);
}

.tbp-grw-shell__title,
.tbp-grw-shell .tbp-sitewide-google-reviews__title {
	margin: 0;
	font-family: Boldonse, Poppins, sans-serif;
	font-size: clamp(1.55rem, 3vw, 2.15rem);
	font-weight: 400;
	line-height: 1.15;
	letter-spacing: 0;
	color: var(--tbp-denim);
}

.tbp-grw-shell .tbp-sitewide-google-reviews__intro {
	margin: 0 0 1.15rem;
}

.tbp-grw-shell .tbp-sitewide-google-reviews__eyebrow {
	margin: 0 0 0.45rem;
	font-family: Poppins, sans-serif;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--tbp-raspberry);
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	--rev-color: #ffffff;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-row,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-row.grw-row-m {
	display: grid !important;
	grid-template-columns: minmax(220px, 250px) minmax(0, 1fr) !important;
	gap: 1.15rem !important;
	align-items: stretch !important;
	width: 100% !important;
	padding-bottom: 0 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header {
	display: flex !important;
	width: auto !important;
	max-width: none !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.55rem !important;
	width: 100% !important;
	min-height: 100% !important;
	padding: 1.2rem 1rem 1.3rem !important;
	box-sizing: border-box;
	text-align: center !important;
	border-radius: 22px !important;
	background:
		linear-gradient(180deg, rgba(122, 241, 245, 0.28) 0%, rgba(255, 255, 255, 0.92) 48%),
		#ffffff !important;
	border: 1px solid rgba(30, 75, 174, 0.10);
	box-shadow: 0 10px 24px rgba(30, 75, 174, 0.08);
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header .grw-img-wrap {
	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	min-height: 64px !important;
	max-width: 64px !important;
	max-height: 64px !important;
	flex: 0 0 64px !important;
	overflow: hidden !important;
	border-radius: 50% !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header .grw-img {
	display: block !important;
	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	min-height: 64px !important;
	max-width: 64px !important;
	max-height: 64px !important;
	aspect-ratio: 1 / 1 !important;
	border-radius: 50% !important;
	border: 3px solid #ffffff;
	box-shadow: 0 0 0 2px var(--tbp-denim);
	object-fit: cover !important;
	object-position: center center !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header .wp-google-name,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header .wp-google-name a {
	color: var(--tbp-denim) !important;
	font-family: Poppins, sans-serif !important;
	font-size: 0.98rem !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header .rpi-stars {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.35rem;
	margin: 0.15rem 0 0 !important;
	color: var(--tbp-star) !important;
	font-size: 1.65rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-based {
	margin-top: 0.15rem !important;
	color: var(--tbp-muted) !important;
	font-size: 0.88rem !important;
	font-weight: 600 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-powered {
	margin-top: 0.15rem !important;
	font-size: 0.75rem !important;
	color: var(--tbp-muted) !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-wr {
	margin-top: 0.7rem !important;
	width: 100%;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-wr a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.4rem !important;
	width: 100% !important;
	min-height: 46px !important;
	padding: 0.55rem 0.9rem !important;
	border-radius: 999px !important;
	background: var(--tbp-denim) !important;
	color: #ffffff !important;
	font-family: Poppins, sans-serif !important;
	font-size: 0.9rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	box-shadow: 0 10px 22px rgba(30, 75, 174, 0.22);
	transition: background 160ms ease, transform 160ms ease;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-wr a:hover,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-wr a:focus-visible {
	background: var(--tbp-denim-strong) !important;
	transform: translateY(-1px);
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides-root,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-content,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-content-inner,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-reviews {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides-root,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-content-inner {
	position: relative !important;
	padding: 0 2.6rem !important;
	box-sizing: border-box;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides.grw-reviews {
	display: flex !important;
	gap: 0.85rem !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides.grw-reviews::-webkit-scrollbar {
	display: none;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slide.grw-review {
	width: calc(50% - 0.45rem) !important;
	flex: 0 0 calc(50% - 0.45rem) !important;
	max-width: none !important;
	min-width: 0 !important;
	scroll-snap-align: start;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review-inner {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.55rem !important;
	height: 100% !important;
	min-height: 250px !important;
	max-height: none !important;
	padding: 1.05rem 1.1rem 1.45rem !important;
	overflow: hidden !important;
	border-radius: 20px !important;
	background: #ffffff !important;
	border: 1px solid rgba(30, 75, 174, 0.10) !important;
	box-shadow: 0 10px 22px rgba(30, 75, 174, 0.07) !important;
	box-sizing: border-box;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review-inner::before {
	content: "“";
	position: absolute;
	right: 0.85rem;
	top: 0.35rem;
	font-family: Boldonse, Poppins, sans-serif;
	font-size: 2rem;
	line-height: 1;
	color: var(--tbp-pastel);
	opacity: 0.9;
	pointer-events: none;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review-inner {
	position: relative !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review .rpi-row12-center {
	display: block !important;
	margin: 0 !important;
	padding-right: 1.4rem;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review .grw-img-wrap {
	display: none !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review .wp-google-name {
	color: var(--tbp-denim) !important;
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-time {
	margin-top: 0.15rem !important;
	color: var(--tbp-raspberry) !important;
	font-size: 0.78rem !important;
	font-weight: 600 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review .rpi-stars {
	color: var(--tbp-star) !important;
	margin: 0.1rem 0 0.15rem !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review .rpi-col4,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review .rpi-col6 {
	flex: 1 1 auto !important;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-feedback,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-feedback.grw-scroll {
	flex: 1 1 auto !important;
	height: auto !important;
	max-height: 8.4em !important;
	overflow: hidden !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-text {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 6;
	line-clamp: 6;
	overflow: hidden !important;
	color: var(--tbp-ink) !important;
	font-size: 0.92rem !important;
	line-height: 1.55 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review-inner > svg {
	position: absolute !important;
	right: 0.95rem !important;
	bottom: 0.85rem !important;
	top: auto !important;
	opacity: 0.95;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-prev,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-next {
	width: 42px !important;
	height: 42px !important;
	border: 1px solid rgba(30, 75, 174, 0.22) !important;
	border-radius: 50% !important;
	background: #ffffff !important;
	box-shadow: 0 8px 16px rgba(30, 75, 174, 0.14) !important;
	opacity: 1 !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt::before,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt::after {
	background-color: var(--tbp-denim) !important;
	border-color: var(--tbp-denim) !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt:hover,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt:focus-visible {
	background: var(--tbp-denim) !important;
	border-color: var(--tbp-denim) !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt:hover::before,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt:hover::after,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt:focus-visible::before,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt:focus-visible::after {
	background-color: #ffffff !important;
	border-color: #ffffff !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-dots-wrap {
	margin-top: 0.85rem !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-dot {
	width: 8px !important;
	height: 8px !important;
	border-radius: 999px !important;
	background: rgba(30, 75, 174, 0.18) !important;
}

.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-dot.active,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-dot.rpi-active,
.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-dot[aria-current="true"] {
	width: 22px !important;
	background: var(--tbp-raspberry) !important;
	opacity: 1 !important;
}

@media (max-width: 900px) {
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-row,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-row.grw-row-m {
		grid-template-columns: 1fr !important;
		gap: 1rem !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-header-inner {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		justify-content: flex-start !important;
		text-align: left !important;
		padding: 1rem 1.1rem !important;
		min-height: 0 !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .wp-google-wr a {
		width: auto !important;
		min-width: 220px;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-row,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-content,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slide {
		--col: 1 !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides.grw-reviews,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides.grw-reviews.rpi-slides-bite {
		gap: 0.75rem !important;
		margin: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slide,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slide.grw-review,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review {
		width: 100% !important;
		flex: 0 0 100% !important;
		max-width: 100% !important;
		min-width: 100% !important;
		box-sizing: border-box !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-slides-root,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-content-inner {
		padding: 0 !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-prev,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-next {
		position: absolute !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		z-index: 3 !important;
		width: 36px !important;
		height: 36px !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-prev,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt.grw-prev {
		left: 2px !important;
		right: auto !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-next,
	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .rpi-ltgt.grw-next {
		right: 2px !important;
		left: auto !important;
	}

	.tbp-grw-shell .wp-gr.wpac[data-id="7512"] .grw-review-inner {
		min-height: 0 !important;
		margin: 0 !important;
		padding: 1rem 2.55rem 1.2rem !important;
	}
}

@media (max-width: 640px) {
	.tbp-grw-shell {
		padding: 1rem 0.85rem 1.15rem;
		border-radius: 22px;
	}
}

/* --- Barre d'actions, sans ombre --- */
.tbp-footer-line .tbp-menu-repair,
			.tbp-footer-line .tbp-menu-repair:hover,
			.tbp-footer-line .tbp-menu-repair:focus-visible,
			.tbp-footer-line .tbp-btn-contact,
			.tbp-footer-line .tbp-btn-contact:hover,
			.tbp-footer-line .tbp-fab__main,
			.tbp-footer-line .tbp-fab__main:hover,
			.tbp-footer-line .tbp-scm-acc__toggle,
			.tbp-footer-line .tbp-scm-acc__toggle:hover,
			.tbp-footer-line .tbp-scm-acc__toggle:focus-visible,
			.tbp-footer-line .tbp-scm-accordion[data-open="true"] .tbp-scm-acc__toggle,
			.tbp-footer-line .wp-block-button__link,
			.tbp-footer-line .wp-block-button__link:hover,
			.tbp-footer-line a.wp-block-button__link[style] {
				box-shadow: none !important;
				transform: none !important;
				filter: none !important;
			}

/* Icones reseaux : seulement la mise en page utile.
   Le CSS WordPress embarquait une quarantaine de marques. */
.wp-block-social-links {
  background: none;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  list-style: none;
  text-indent: 0;
}
.wp-block-social-links.has-large-icon-size { font-size: 36px; }
.wp-block-social-links .wp-social-link a,
.wp-block-social-links .wp-social-link a:hover {
  border-bottom: 0;
  box-shadow: none;
  text-decoration: none;
  align-items: center;
  display: flex;
  line-height: 0;
}
.wp-block-social-links .wp-social-link svg { height: 1em; width: 1em; }
.wp-block-social-links.is-style-logos-only .wp-social-link { background: none; }
.wp-block-social-links.is-style-logos-only .wp-social-link svg { height: 1.25em; width: 1.25em; }
.wp-block-social-links.is-style-logos-only .wp-social-link a { padding: 0; }
