/* Boutique de démonstration NormiScan : défauts volontaires (contraste faible). */
body { font-family: Georgia, serif; margin: 0; background: #fafaf7; color: #333; }
header, main, footer { max-width: 960px; margin: 0 auto; padding: 16px; }
header { display: flex; justify-content: space-between; align-items: center; }
.logo { font-size: 1.6rem; font-weight: bold; color: #7a5a3a; text-decoration: none; }
nav a { margin-left: 16px; color: #7a5a3a; }
.produits { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.carte { background: #fff; border: 1px solid #eee; padding: 12px; }
.carte img, .fiche img { width: 100%; height: auto; display: block; }
/* Défaut volontaire : gris très clair sur blanc (contraste environ 1,6:1) */
.discret, .carte p { color: #c8c8c8; }
.prix { font-size: 1.3rem; font-weight: bold; color: #b0392b; }
.barre { text-decoration: line-through; color: #bbb; margin-right: 8px; }
.badge { background: #e33; color: #f9b; padding: 2px 6px; font-size: .8rem; }
.bouton { background: #ddd; color: #fff; border: 0; padding: 10px 18px; cursor: pointer; }
footer { border-top: 1px solid #ddd; margin-top: 40px; font-size: .85rem; }
footer a { color: #d0c4b8; margin-right: 14px; }
#bandeau-cookies { position: fixed; left: 0; right: 0; bottom: 0; background: #fff; border-top: 3px solid #7a5a3a; padding: 16px; box-shadow: 0 -4px 12px rgba(0,0,0,.1); }
#bandeau-cookies[hidden], #reglages[hidden] { display: none; }
#bandeau-cookies .accepter { background: #2e7d32; color: #fff; border: 0; padding: 10px 22px; font-size: 1rem; }
#bandeau-cookies .personnaliser { background: none; border: 0; color: #bbb; font-size: .75rem; text-decoration: underline; }
.newsletter { background: #f1ece4; padding: 16px; margin-top: 30px; }
.newsletter input[type=email] { padding: 8px; border: 1px solid #ddd; }
