/* Boucherie Primeur Petit Frais Évry — charte issue du logo */
:root {
	--bpf-rouge: #92080A;
	--bpf-rouge-fonce: #6E0607;
	--bpf-vert: #27570B;
	--bpf-vert-clair: #3E7A1C;
	--bpf-noir: #1A1A1A;
	--bpf-creme: #F7F4EE;
}

/* Bandeau supérieur en vert */
.meathat-header-top { background: var(--bpf-vert); }
.meathat-header-top .top-welcome p,
.meathat-header-top .top-welcome span { color: #fff; font-weight: 600; letter-spacing: .02em; }

/* Logo rond dans l'en-tête */
.logo img, .mobile_menu_logo img, .logo a img { max-height: 78px; width: auto; }
.meathat_nav_area .logo { padding: 6px 0; }
.mobile_menu_logo img { max-height: 70px; }

/* Bouton d'en-tête */
.meathat_nav_area .dtbtn, .donate-btn-header a { background: var(--bpf-rouge); }

/* Badge « certifiée ACHAHADA » réutilisable */
.bpf-badge {
	display: inline-flex; align-items: center; gap: .5em;
	background: var(--bpf-vert); color: #fff; border-radius: 40px;
	padding: .45em 1.1em; font-weight: 700; font-size: .95rem; letter-spacing: .03em;
}
.bpf-badge::before { content: "✔"; }

/* Encadré certification */
.bpf-encadre {
	border-left: 5px solid var(--bpf-vert); background: var(--bpf-creme);
	padding: 1.4em 1.6em; border-radius: 6px;
}
.bpf-encadre strong { color: var(--bpf-rouge); }

/* Horaires */
.bpf-horaires { width: 100%; border-collapse: collapse; }
.bpf-horaires td { padding: .55em .2em; border-bottom: 1px solid #e5e0d6; }
.bpf-horaires td:last-child { text-align: right; font-weight: 600; }

/* Listes à coches vertes dans les textes */
.bpf-coches { list-style: none; padding-left: 0; }
.bpf-coches li { position: relative; padding-left: 1.7em; margin-bottom: .55em; }
.bpf-coches li::before { content: "✔"; position: absolute; left: 0; color: var(--bpf-vert); font-weight: 700; }

/* Pied de page */
.footer-middle .widget h2, .footer-middle .widget h3 { color: #fff; }

/* ---- En-tête : logo plus grand, menu sur une ligne ---- */
.meathat-main-menu .logo img { height: 92px; max-height: none; width: auto; }
.meathat-main-menu .logo { padding: 6px 0; }
.meathat_menu > ul > li > a { margin: 38px 11px; font-size: 16px; font-weight: 600; white-space: nowrap; }
.meathat_menu > ul > li > a:before { background: var(--bpf-rouge); }
a.dtbtn { white-space: nowrap; font-size: 15px; padding: 12px 22px; margin-left: 12px; }
@media (max-width: 1199px) { .meathat_menu > ul > li > a { margin: 38px 7px; font-size: 15px; } }

/* Bandeau supérieur sur une ligne */
.meathat-header-top .top-address p { display: flex; flex-wrap: wrap; gap: 6px 26px; margin: 0; }
.meathat-header-top .top-address p > * { display: inline-flex; align-items: center; gap: 6px; }

/* ---- Boutons du thème : texte blanc lisible ---- */
.witr_btn, a.witr_btn, .witr_button_area a, .witr_btn_style a { color: #fff !important; }
.slider_btn .witr_btn.active { border-color: #fff; color: #fff !important; background: rgba(0,0,0,.35); }
.slider_btn .witr_btn.active:hover { background: var(--bpf-vert); border-color: var(--bpf-vert); }

/* ---- Cartes « Nos engagements » : icônes à taille normale ---- */
.witr_feature_12.sub-item svg, .witr_feature_12.sub-item i { width: 54px; height: 54px; font-size: 54px; fill: var(--bpf-rouge); color: var(--bpf-rouge); }
.witr_feature_12.sub-item .witr_feature_bo_thumb img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; border-radius: 4px; margin-top: 14px; }

/* Puces du bandeau défilant et carrousels */
.swiper-pagination-bullet-active, .slick-dots li.slick-active button { background: var(--bpf-rouge) !important; }

/* Intro accueil (H1) */
.bpf-intro h1 { font-size: 2.3rem; line-height: 1.2; }
@media (max-width: 767px) { .bpf-intro h1 { font-size: 1.7rem; } .meathat-main-menu .logo img { height: 70px; } }

/* Pied de page : logo sur pastille blanche */
.social_logo img { background: #fff; border-radius: 50%; padding: 14px; height: 170px; width: 170px; object-fit: contain; }

/* Vidéo verticale (Reel) */
.bpf-video { position: relative; max-width: 380px; margin: 0 auto; border-radius: 22px; overflow: hidden; box-shadow: 0 18px 50px rgba(0,0,0,.28); border: 6px solid #fff; background: #000; }
.bpf-video video { display: block; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; }
.bpf-video__son { position: absolute; left: 50%; bottom: 70px; transform: translateX(-50%); background: var(--bpf-rouge); color: #fff; border: 0; border-radius: 40px; padding: .7em 1.4em; font-weight: 700; cursor: pointer; box-shadow: 0 6px 20px rgba(0,0,0,.35); }
.bpf-video__son:hover { background: var(--bpf-vert); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }
