/* 1. Grille full-width (remplit tout l’espace parent) */
.store-grid {
  display: grid;
  gap: 1rem;
  /* auto-fit élimine les colonnes vides pour répartir les cartes */
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  width: 100%;
  box-sizing: border-box;
  padding: 0 1rem; /* facultatif, pour garder un peu d’air sur bords */
}

/* 2. Style des cartes */
.store-card {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 1rem;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.store-card h3 {
  margin: 0 0 0.5rem;
  font-size: 1.4rem;
}
.store-meta {
  font-size: 0.9rem;
  color: #555;
  margin-bottom: 0.75rem;
}

/* 3. Accordéon natif */
.store-hours summary {
  cursor: pointer;
  font-weight: bold;
  margin-bottom: 0.5rem;
  list-style: none; /* supprime la flèche par défaut sur certains navigateurs */
}
.store-hours[open] summary {
  color: #007bff;
}

/* 4. Tableau des horaires : masque tout sauf .today */
.store-hours table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  margin-top: 0.5rem;
}
.store-hours td {
  padding: 0.25rem 0.5rem;
}
.store-hours tr { display: none; }
.store-hours tr.today { display: table-row; }
/* Quand l’accordéon est ouvert, on ré-affiche toutes les lignes */
.store-hours[open] tr {
  display: table-row;
}

/* 5. Badge “fermé” */
.badge-closed {
  background: #e57373;
  color: #fff;
  padding: 0.15rem 0.4rem;
  border-radius: 0.25rem;
  font-size: 0.8rem;
}

/* 6. Formulaire full-width en bas */
#formulaire-relais-placeholder {
  grid-column: 1 / -1;
  width: 100%;
  box-sizing: border-box;
  margin-top: 1rem;
}
.store-hours[open] tr.today td:first-child {
  font-weight: 700;        /* texte plus gras          */
}
.store-hours[open] tr.today td:last-child {
  color:#007bff;           /* ou une couleur repérable */
}
/* résumé fermé : jour/horaires mis en avant, libellé en style “lien” */
.store-hours summary .today-inline   { font-weight:600; color:#222; }
.store-hours summary .summary-action { color:#007bff; font-size:.9rem; font-weight:500; }

/* petit effet au survol */
.store-hours summary .summary-action:hover { text-decoration:underline; }

/* quand l’accordéon est ouvert, on peut masquer le libellé pour éviter le doublon */
.store-hours[open] .summary-action { display:none; }

/* accessibilité : focus clavier */
.store-hours summary:focus-visible { outline:2px solid #007bff; border-radius:4px; }


/* Masque l’input par son ID, en forçant la règle */
#field_info_commande {
  display: none !important;
}
/* Si nécessaire, masquer aussi son conteneur parent */
#field_info_commande,
#field_info_commande ~ div {
  display: none !important;
}

.pfg-forms h3 {display: none;}
.pfg-forms .form-group > label { font-size :19px; font-weight: bold; font-family: helvetica;}

.freeshipping-message-success,
.freeshipping-message {
    margin-top: 1.5rem; /* ou autre valeur selon ton design */
}
/* blocs seuil de gratuite au panier */
.alert-info {
  background-color: #fbcd63;
  color: #000;
  border-left: 3px solid red;
}
.alert {
  padding: .95rem 1.25rem .15rem;
}

/* legal region*/

.fed-feder-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: nowrap;
  text-align: center;
  font-size: 15px;
  line-height: 1.4;
  margin: 50px 0;
}

.fed-feder-banner img {
  max-height: 100px;
  height: auto;
  width: auto;
}

.fed-feder-banner-text {
  max-width: 450px;
}

/* Version mobile : logos au-dessus / dessous du texte */
@media (max-width: 800px) {
  .fed-feder-banner {
    flex-direction: column;
    flex-wrap: wrap;
  }

  .fed-feder-banner-text {
    max-width: 100%;
  }
}
