/* Grille cards 3→2→1, mêmes tokens que produits.css */
.news-wrap{ padding: 24px 0 64px; }
.news-grid{ display:grid; gap:16px; grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:992px){ .news-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ .news-grid{ grid-template-columns:1fr; } }

.card{ background:#fff; border:1px solid #eee; border-radius:12px; overflow:hidden; display:flex; flex-direction:column; }
.card .cover{ position:relative; aspect-ratio:16/10; background:var(--grey-50); }
.card .cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.card .tag{ position:absolute; left:12px; top:12px; background:#C1272D; color:#fff; padding:.25rem .5rem; border-radius:999px; font-size:.8rem; }
.card .body{ padding:12px; display:flex; gap:8px; flex-direction:column; }
.card h3{ margin:0; font-size:1rem; line-height:1.3; }
.card .excerpt{ color:#555; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.card .meta{ color:#777; font-size:.9rem; }

.pager a{ padding:8px 12px; border-radius:10px; border:1px solid #e5e7eb; background:#fff; text-decoration:none; color:#333; margin:0 4px; }
.pager a.active{ background:#C1272D; color:#fff; border-color:#C1272D; }

.inline-form{ display:flex; gap:10px; flex-wrap:wrap; }
/* ===== Toolbar Actualités (filtres + recherche) ===== */
.news-toolbar,
.news-controls {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #f4f4f5; /* var(--grey-50) si défini */
  border-radius: 12px;
  margin: 0 0 16px;
}

/* Style unifié pour select + search */
.news-controls select,
.news-controls input[type="search"] {
  -webkit-appearance: none;
  appearance: none;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  line-height: 42px;
  color: #111827;
  outline: none;
}

.news-controls input[type="search"] {
  width: min(420px, 100%);
  min-width: 220px;
}

.news-controls select {
  min-width: 140px;
  padding-right: 36px; /* place pour la flèche */
  background-image:
    linear-gradient(45deg, transparent 50%, #6b7280 50%),
    linear-gradient(135deg, #6b7280 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 12px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

/* Focus accessible */
.news-controls select:focus,
.news-controls input[type="search"]:focus {
  border-color: var(--red, #C1272D);
  box-shadow: 0 0 0 3px rgba(193, 39, 45, .12);
}

/* Placeholder plus doux */
.news-controls input[type="search"]::placeholder {
  color: #9ca3af;
}

/* Compacité sur mobile */
@media (max-width: 640px) {
  .news-toolbar,
  .news-controls { flex-wrap: wrap; gap: 8px; padding: 10px 12px; }
  .news-controls input[type="search"] { min-width: 0; flex: 1 1 100%; }
  .news-controls select { flex: 1 1 48%; min-width: 0; }
}
/* ===== Bloc Newsletter (Actualités) ===== */
.newsletter-card{
  background:#fff;
  border-radius:16px;
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
  padding:24px;
  position: relative;
}

/* pastille rouge en haut à gauche (si tu l’utilises) */
.newsletter-card::before{
  content:"";
  position:absolute; top:-10px; left:16px;
  width:36px; height:24px; border-radius:10px 10px 4px 4px;
  background:var(--red, #C1272D);
  box-shadow: 0 8px 20px rgba(193,39,45,.25);
}

.newsletter-title{
  font-size: clamp(1.25rem, 1.1rem + .6vw, 1.75rem);
  line-height:1.2;
  margin:0 0 14px;
}

/* formulaire */
.nl-form{
  display:flex; gap:12px; align-items:center; flex-wrap:wrap;
}

.nl-input{
  flex:1 1 320px;
  height:46px;
  padding:0 14px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#fff;
  font: inherit;
  outline: none;
}
.nl-input::placeholder{ color:#9ca3af; }
.nl-input:focus{
  border-color: var(--red, #C1272D);
  box-shadow: 0 0 0 3px rgba(193,39,45,.12);
}

/* bouton */
.nl-btn{
  height:46px;
  padding:0 18px;
  border-radius:12px;
  border:1px solid var(--red, #C1272D);
  background: var(--red, #C1272D);
  color:#fff; font-weight:600; cursor:pointer;
}
.nl-btn:hover{ filter:brightness(.98); }
.nl-btn:focus{ outline:2px solid var(--red, #C1272D); outline-offset:2px; }

/* bouton */
.btn{
  height:30px;
  padding:0 20px;
  border-radius:12px;
  border:1px solid var(--red, #C1272D);
  background: var(--red, #C1272D);
  color:#fff; font-weight:600; cursor:pointer;
}
.btn:hover{ filter:brightness(.98); }
.btn:focus{ outline:2px solid var(--red, #C1272D); outline-offset:2px; }

/* état message */
.nl-msg{ margin-top:10px; font-size:.95rem; color:#6b7280; }
.nl-msg.is-ok{ color:#065f46; }     /* vert */
.nl-msg.is-err{ color:#991b1b; }    /* rouge */

/* responsive compacité */
@media (max-width:640px){
  .newsletter-card{ padding:18px; }
  .nl-form{ gap:8px; }
  .nl-btn{ width:100%; }
  .btn{ width:100%; }
}
